Data driven pages

DDP thumbnail“Data Driven Pages” is the term used to describe some new functionality in ArcGIS 10 that allows you to create a multi-page map series from a single map document. Data Driven Pages are available at the ArcView license level. How do Data Driven Pages work? To use Data Driven Pages you first need to create or identify an index layer. This layer contains features that define the extent of the main data frame for each page in the series. Using this index layer, Data Driven Pages generates one page per index feature from a single layout. The index layer contains the “data” that “drives” the creation of the pages in the series – hence the name “Data Driven Pages”. The index layer can also be used to define a number of other things that can be added to the maps, including the page name, page number, map scale, rotation angle of the data frame, and coordinate system. The index layer is often a rectangular grid, but other variations include extents for linear areas in a strip map series, or irregular shaped polygons that identify the areas of interest to map (e.g., ecological study areas, counties, states etc…) To work with Data Driven Pages, there is a special toolbar that can be enabled by clicking Customize on the top bar menu, then clicking Toolbars, and then clicking Data Driven Pages. The first button on this toolbar allows you to create and customize new Data Driven Pages. DDP toolbarFigure 1: Data Driven Pages Toolbar In ArcToolbox, in the Cartography Tools Toolbox, there is also a Data Driven Pages toolset that contains special geoprocessing tools that work with Data Driven Pages. Geoprocessing functionality includes the ability to calculate coordinate system information, such as the central meridian and UTM zone, calculate the rotation angle for true north, and create and populate fields to label adjacent pages. DDP toolsetFigure 2: Data Driven Pages Geoprocessing Toolset For an overview of the new Data Driven Pages functionality, see the Data Driven Pages post on the ArcGIS Desktop Blog. For more complete information and step-by-step instructions, review the online help topics that relate to Data Driven Pages. Do map elements update from one page to the next? Yes, they do. Elements such as the map extent, map scale, north arrow, and bar scale update from one page to the next. In addition, Data Driven Pages allow you to use dynamic text. “Dynamic text” is a term that describes text on the page that changes dynamically from one page to another – this is another new capability introduced in ArcGIS 10. Dynamic text elements include page name, number and count, as well as labels identifying neighboring pages. Dynamic text has tags to automatically identify document properties such as the pathname and the time the .mxd was saved. In fact, any attribute for features in the index layer can be used for dynamic text and updated automatically with Data Driven Pages. To insert dynamic text, from the top menu, click Insert, and then click Dynamic Text. You will see the many options you have available to you. DDP dynamic textFigure 3: Dynamic TextHow do I print and export Data Driven Pages? ArcMap’s print and export functionality have been updated to support Data Driven Pages. When Data Driven Pages are enabled, you have the option to print or export the current page, all pages, or a specific range of pages. When exporting to PDF, all the pages can be exported into a single PDF document. DDP exportFigure 4: Options for Exporting to PDFCan I use python scripting with Data Driven Pages? Yes, you can. In addition to all the out-of-the-box functionality available with Data Driven Pages, there is an arcpy.mapping site package that allows for additional geoprocessing and customization. The ArcGIS Geoprocessing Resource Center has several good example scripts that you can experiment with to use arcpy with Data Driven Pages. Is there a template I can use to learn more? Yes, there is. On the Map Templates page of the ArcGIS Resource Center there’s a template I created that uses Data Driven Pages to compile a Legislative District Atlas of Massachusetts. This is a good resource to use to learn some of the basic Data Driven Pages functionality. DDP templateFigure 5: Map Template for the Legislative District Atlas of MassachusettsWhat’s in the template that’s exciting? I am glad you asked! One of my goals when I was creating the template was to showcase Data Driven Pages and to help you become more familiar with their use. A second goal was to showcase how Data Driven Pages can help you create great cartographic products. This template is worth exploring if you are involved in map series production and you want to learn about a new faster and easier way to make attractive map books with ArcGIS. These are five interesting features in this template:

  1. This templates shows you how Data Driven Pages can be used to automatically update map elements, such as the bar scale, scale text and page number, and text, such as the title or page number, as the pages change.
  2. This template shows you how to label using a Page Definition Query so that only certain features appear on the appropriate Data Driven Page.
  3. This template shows you how to relate information in two different data frames (in this case, the keymap updates as the map extent for each Data Driven Page updates).
  4. This template shows you how to position a keymap (an inset map that shows an overview of the mapped location) in the optimal position on the layout depending on the extent of the data on each page.
  5. This template shows how an entire map book can be created and collated in ArcGIS.

Let’s look at each of these in a little more detail.

1: Automatic Updating of Map Elements and Dynamic Text: I added a page name, bar scale, and scale text to the map surrounds that update with each Data Driven Page. The page name (that indicates the district number) is an example of dynamic text. The bar scale is worth noting because it is a normal map element that now updates with each Data Driven Page. The scale text is interesting because it can be inserted as a map element or dynamic text and in either case will update with each Data Driven Page. In this template, I inserted it as dynamic text to showcase this new option.

2: Use of Page Definition Query: At the larger scales this template shows the road and street network. For the legislative district atlas, only the street names that bound the districts need be identified.

DDP labeling

Figure 6: Smart labeling with Page Definition Queries.

Using the new Page Definition Query functionality available with ArcGIS 10, this template shows how you can achieve smarter labeling. Similar to other definition queries, Page Definition Queries allow you to specify with a SQL query which features or labels of a layer are drawn, but the difference is that they dynamically update for each page. With this functionality it is possible to restrict labeling, in this case, to the district shown on each Data Driven Page.

DDP page definition query

Figure 7: Page Definition Query

3: Relating Information from Different Pages: The keymap also updates to highlight the same district as the main map; this link between the main map and the keymap was set up through a Page Definition Query that was mentioned above. This new functionality brings added intelligence to the map by providing connections among data frames.

DDP keymap PDQ

Figure 8: Keymap and Main Map in Sync

4: Determining the Optimal Keymap Position: The map template shows each legislative district for Massachusetts on a different page. I first designed the layout so that the keymap was placed in the top left corner of each page. Consequently, sometimes it overlapped the main map information. In order to maximize the space for the main map, an arcpy script was written to determine the extent of the mapped district and move the keymap to a corner where it did not cover any vital information. This customizable script is provided in the template.

DDP keymap

Figure 9: Optimal Keymap Locations

5: Creating and Collating a Map Book: This template shows a real world example of how to create a map book entirely in ArcMap. Every portion of this map book was made with ArcGIS. For example, I made the cover page for the map book in ArcMap using graphic as well as data elements, and arcpy was used to collate the book into a single PDF document.

DDP atlas

Figure 10: Collating the Legislative District Atlas

Data Driven Pages are definitely worth exploring if you are involved with any map book or map series projects. Data Driven Pages gives you an easy-to-learn way to produce them automatically using the data in your database. The Legislative District Atlas map template is a great resource you can use to gain practical experience working with the Data Driven Pages. I hope you have as much fun with the map template and Data Driven Pages as I did!