ArcGIS for Desktop

  • Documentation
  • Pricing
  • Support

  • My Profile
  • Help
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

The mapping platform for your organization

ArcGIS for Desktop

A complete professional GIS

ArcGIS for Server

GIS in your enterprise

ArcGIS for Developers

Tools to build location-aware apps

ArcGIS Solutions

Free template maps and apps for your industry

ArcGIS Marketplace

Get apps and data for your organization

  • Documentation
  • Pricing
  • Support
Esri
  • Sign In
user
  • My Profile
  • Sign Out

Help

  • Home
  • Get Started
  • Map
  • Analyze
  • Manage Data
  • Tools
  • More...

ListDataFrames

  • Summary
  • Discussion
  • Syntax
  • Code Sample

Summary

Returns a Python list of DataFrame objects that exist within a single map document (.mxd).

Discussion

ListDataFrames always returns a Python list object even if only one data frame is returned. In order to return a DataFrame object, an index value must be used on the list (e.g., df = arcpy.mapping.ListDataFrames(mxd)[0]). For loops on a list provide an easy mechanism to iterate through each item in a list (e.g., for df in arcpy.mapping.ListDataFrames(mxd):).

Wildcards are not case sensitive. A wildcard string of "la*" will return a data frame with a name Layers.

It is possible that there might be data frames in a map document that have the same name. If that is the case, then other properties may need to be used to isolate a specific data frame. Properties such as a data frame's credits or description could be used to do this. It is ideal that all data frames be uniquely named.

Syntax

ListDataFrames (map_document, {wildcard})
ParameterExplanationData Type
map_document

A variable that references a MapDocument object.

MapDocument
wildcard

A combination of asterisks (*) and characters can be used to help limit the results.

(The default value is None)

String

Return Value

Data TypeExplanation
DataFrame

A Python list of DataFrame objects.

Code Sample

DataFrame example:

This script will search for a data frame with the name Transportation and set the scale and rotation to the appropriate values.

import arcpy
mxd = arcpy.mapping.MapDocument(r"C:\Project\Project.mxd")
for df in arcpy.mapping.ListDataFrames(mxd, "t*"):
    if df.name.lower == "transportation":
        df.scale = 24000
        df.rotation = 5.5
mxd.saveACopy(r"C:\Project\Project2.mxd")
del mxd
Feedback on this topic?

ArcGIS for Desktop

  • Home
  • Documentation
  • Pricing
  • Support

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

About Esri

  • About Us
  • Careers
  • Insiders Blog
  • User Conference
  • Developer Summit
Esri
© Copyright 2016 Environmental Systems Research Institute, Inc. | Privacy | Legal