Beschriftung | Erläuterung | Datentyp |
Eingabe-Features | Die Eingabe-Polygon-Features, die zum Generieren des Kartogramms verwendet werden. | Feature Layer |
Feldname | Das numerische Feld, das die Werte enthält, durch die die Fläche der Polygon-Features im Ausgabekartogramm bestimmt wird. Alle Features mit einem negativen oder einem Wert von 0 werden in der Ausgabe ausgelassen. | Field |
Ausgabe-Feature-Class | Die Ausgabepolygone mit angewendeter Kartogrammtransformation. | Feature Layer |
Methode (optional) | Gibt die Methode an, die zum Transformieren der Eingabe und zum Erstellen des Kartogramms verwendet wird.
| String |
Zusammenfassung
Generiert ein Kartogramm, indem es die Fläche der Polygone basierend auf einem numerischen Feld so verzerrt, dass sie sich proportional zueinander verhalten, wobei die gemeinsamen Grenzen erhalten bleiben.
Abbildung

Verwendung
Die Ausgabe ist ein neuer Polygon-Feature-Layer, in dem die Polygone so transformiert sind, dass die Fläche jedes Features proportional zum Wert eines numerischen Feldes verglichen mit der Summe des betreffenden Feldes im Verhältnis zu allen Features in der Eingabe ist.
Die Attributdaten des Eingabe-Layers werden in die Ausgabe übertragen. Die Symbolisierung und die Beschriftung werden übertragen, wenn die Eingabe ein symbolisierter Layer ist.
Der Parameter Methode hat die folgenden Optionen:
- Flussbasiert: Diese Option ist eine Weiterentwicklung der Methode Diffusion. Sie ist oftmals schneller. Die Form der Ausgabepolygone ist ggf. anders oder enthält im Vergleich etwas mehr Verzerrungen. Dies ist die Standardeinstellung.
- Diffusion: Diese Option verzerrt die ursprünglichen Formen etwas weniger als die Option Flussbasiert, dauert jedoch länger.
Um die Verarbeitungszeit zu verkürzen, können Sie das Werkzeug Polygon vereinfachen an den Eingabe-Features ausführen, bevor Sie dieses Werkzeug ausführen. Dies kann bei einigen Ausgabepolygonen dazu führen, dass sie allzu vereinfacht erscheinen, wenn sie so verzerrt werden, dass sie deutlich größer sind.
Die Eingabedaten oder die aktive Karte, auf der die Daten angezeigt werden, sollten eine flächentreue Projektion verwenden, die für die betreffende Region passend ist. Auf diese Weise stellt die sichtbare Fläche der Eingabepolygone die tatsächliche Fläche genauer dar, bevor sie verändert wird. Verwenden Sie die Umgebung Kartografisches Koordinatensystem, wenn keine aktive Karte vorhanden ist und die Daten eine nicht flächentreue Projektion verwenden. Zeigen Sie die Ergebnisse in derselben flächentreuen Projektion an, um die angepassten Feature-Flächen genau darzustellen.
Die Feldwerte im Parameterwert Feldname sollten positive Zahlen sein. Alle Features mit negativen Werten oder Werten von 0 sind in der Ausgabe nicht vorhanden.
Zusätzliche Ressourcen:
Gastner, Michael T. and M. E. J. Newman. 2004. "Diffusion-based method for producing density-equalizing maps." Proceedings of the National Academy of Sciences of the United States of America, 101(20): 7499–7504.
Gastner, Michael T., Vivien Seguy, and Pratyush More. 2018. "Fast flow-based algorithm for creating density-equalizing map projections." Proceedings of the National Academy of Sciences of the United States of America, 115(10): E2156-E2164.
Parameter
arcpy.cartography.GenerateContiguousCartogram(in_features, field_name, out_features, {method})
Name | Erläuterung | Datentyp |
in_features | Die Eingabe-Polygon-Features, die zum Generieren des Kartogramms verwendet werden. | Feature Layer |
field_name | Das numerische Feld, das die Werte enthält, durch die die Fläche der Polygon-Features im Ausgabekartogramm bestimmt wird. Alle Features mit einem negativen oder einem Wert von 0 werden in der Ausgabe ausgelassen. | Field |
out_features | Die Ausgabepolygone mit angewendeter Kartogrammtransformation. | Feature Layer |
method (optional) | Gibt die Methode an, die zum Transformieren der Eingabe und zum Erstellen des Kartogramms verwendet wird.
| String |
Codebeispiel
Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion GenerateContiguousCartogram im unmittelbaren Modus verwendet wird.
import arcpy
arcpy.env.workspace = "C:/data/admin.gdb"
arcpy.cartography.GenerateContiguousCartogram(
"countries",
"population",
"countries_cartogram_population",
"FLOW-BASED")
Das folgende eigenständige Skript veranschaulicht, wie die Funktion GenerateContiguousCartogram verwendet wird.
# Name: GenerateContiguousCartogram_sample2.py
# Description: Output a contiguous cartogram of country polyons
# based on popuplation.
# Import System Modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/data/admin.gdb"
# Set Local Variables
in_features = "countries"
value_field = "population"
out_cartogram = "countries_cartogram_population"
algorithm = "DIFFUSION"
# Execute Generate Contiguous Cartogram
arcpy.cartography.GenerateContiguousCartogram(
in_features,
value_field,
out_cartogram,
algorithm)