HOW TO

Verwenden und Exportieren einer Kartenserie in einem Kartendokument mit mehreren Datenrahmen

Last Published: July 11, 2020

Zusammenfassung

Bei einer Kartenserie muss ein Index-Layer zum Bestimmen der Ausdehnung des Datenrahmens für jede Seite verwendet werden. Als Index-Layers kann jeder Layer auf der Karte zum Definieren der Ausdehnung in Abhängigkeit von den Feature-Layern dienen. Mit dem Modul "arcpy.mapping" kann die Funktionalität einer Kartenserie darüber hinaus erweitert werden, um den Export und die Verwendung in einem Kartendokument mit mehreren Datenrahmen zu ermöglichen.

Dieser Artikel enthält die Schritte zum Verwenden und Exportieren einer Kartenserie mit mehreren Datenrahmen.

Vorgehensweise

  1. Importieren Sie die erforderlichen Module.
import os import arcpy from arcpy import mapping
  1. Geben Sie das Kartendokument an, das die Layer und die Datenrahmen enthält.
mxd = arcpy.mapping.MapDocument("CURRENT") masterFrame = arcpy.mapping.ListDataFrames(mxd)[0] Frame2 = arcpy.mapping.ListDataFrames(mxd)[1] Frame3 = arcpy.mapping.ListDataFrames(mxd)[2]
  1. Drucken Sie die Seitenanzahl.
print mxd.dataDrivenPages.pageCount
  1. Erstellen Sie eine Schleife, die alle verfügbaren Rahmen durchläuft und die Seite an einen gewünschten Speicherort exportiert. Das Codesegment legt außerdem als Ausdehnung der Rahmen die Ausdehnung des Master-Rahmens fest.
for pageNum in range(1, mxd.dataDrivenPages.pageCount): mxd.dataDrivenPages.currentPageID = pageNum + 1 Frame2.extent = masterFrame.extent Frame3.extent = masterFrame.extent mxd.dataDrivenPages.currentPageID = pageNum print pageNum OutF = os.path.join("<folder_location>" ,str(pageNum) + ".pdf" ) arcpy.mapping.ExportToPDF(mxd, OutF)
Hinweis: Da als Ausdehnung der Rahmen die Ausdehnung des Master-Rahmens definiert wurde, müssen die Daten in demselben Bereich auf der Karte verfügbar sein, damit der Datenrahmen sichtbar ist.

Nachfolgend finden Sie den vollständigen Code:

import os import arcpy from arcpy import mapping mxd = arcpy.mapping.MapDocument("CURRENT") masterFrame = arcpy.mapping.ListDataFrames(mxd)[0] Frame2 = arcpy.mapping.ListDataFrames(mxd)[1] Frame3 = arcpy.mapping.ListDataFrames(mxd)[2] print mxd.dataDrivenPages.pageCount for pageNum in range(1, mxd.dataDrivenPages.pageCount): mxd.dataDrivenPages.currentPageID = pageNum + 1 Frame2.extent = masterFrame.extent Frame3.extent = masterFrame.extent mxd.dataDrivenPages.currentPageID = pageNum print pageNum OutF = os.path.join("C:/temp" ,str(pageNum) + ".pdf" ) arcpy.mapping.ExportToPDF(mxd, OutF)

Artikel-ID: 000022852

Benachrichtigungen erhalten und Lösungen für neue oder häufige Probleme finden

Unser neuer KI-Chatbot stellt zusammengefasste Antworten und Videolösungen für Sie bereit.

Esri Support App herunterladen

Zugehörige Informationen

Weitere Informationen zu diesem Thema erkunden

Unterstützung durch ArcGIS-Experten anfordern

An den technischen Support wenden

Esri Support App herunterladen

Zu Download-Optionen wechseln