Verteilung von Korallen und Schwämmen untersuchen

In diesem Abschnitt untersuchen Sie einige der Faktoren, die die Verteilung von Korallen und Schwämmen in den Gewässern um Catalina Island bestimmen. Zunächst laden Sie Daten von NOAA (National Oceanic and Atmospheric Administration) herunter, wählen einen Interessenbereich aus und bereiten die Daten für die Untersuchung vor.

Daten zu Tiefseekorallen und -schwämmen herunterladen

In den NOAA-Daten sind die bekannten Korallen- und Schwammvorkommen auf der ganzen Welt verzeichnet. Ein wichtiger Aspekt der Einarbeitung in GIS besteht darin, zu lernen, wie öffentliche Daten heruntergeladen und verwendet werden. Sie beginnen damit, zwei Datasets aus dem Deep Sea Coral Research and Technology Program von NOAA herunterzuladen. Zunächst öffnen Sie das Deep-Sea Coral and Sponge Map Portal. Diese Website enthält Daten, die vierteljährlich aktualisiert werden und hilfreich beim Studium von Meereslebewesen sind. In diesem Abschnitt wird Schritt für Schritt gezeigt, wie Sie Arten für einen bestimmten Teil der Welt herunterladen. Da das Untersuchungsgebiet um Catalina Island herum vor der Küste von Kalifornien liegt, laden Sie Daten für den nördlichen Pazifik herunter.

  1. Öffnen Sie den File Explorer auf Ihrem Computer. Erstellen Sie an einem leicht auffindbaren Ort auf dem Computer einen Ordner mit dem Namen DeepSeaCoralSponge.

    In diesem Lernprogramm werden die Daten in C:\Lessons\DeepSeaCoralSponge\ angezeigt. Sie können einen anderen Ordner verwenden, müssen dann jedoch die Pfade in den folgenden Anweisungen anpassen.

  2. Gehen Sie zu https://www.ncei.noaa.gov/maps/deep-sea-corals/mapSites.htm.

    Das NOAA Deep-Sea Coral & Sponge Map Portal enthält eine vom NOAA Deep Sea Coral Research and Technology Program erstellte und verwaltete Karte. Die Kartendaten werden vierteljährlich aktualisiert.

    Seite "NOAA Deep-Sea Coral & Sponge Portal"

  3. Klicken Sie oben auf der Seite auf Data Query.

    "Data Query" auf dem Menüband der Portalseite

  4. Klicken Sie im Bereich Data Query im Abschnitt Region auf das Dropdown-Menü und dann auf North Pacific.

    Auswahl "North Pacific" für "Region" im Bereich "Data Query"

  5. Klicken Sie auf Suchen.

    Schaltfläche "Search" im Bereich "Data Query"

    Die Suche kann einige Minuten dauern.

  6. Klicken Sie nach dem Laden der Daten auf oben auf der Seite auf Data Download.

    Schaltfläche "Data Download" auf dem Menüband der Portalseite

    Der Bereich "Data Download" wird geöffnet.

  7. Übernehmen Sie die Standardwerte, und klicken Sie auf Customized Download.

    Schaltfläche "Customized Download"

    Die benutzerdefinierte Download-Seite mit den Daten für die Region Nordpazifik wird geöffnet.

  8. Führen Sie einen Bildlauf nach unten durch, und klicken Sie auf File type.
  9. Wählen Sie unter File type die Option aus, die mit .csv beginnt.

    Dateityp mit Einstellung ".csv"

  10. Klicken Sie auf Senden.

    Der Datendownload kann mehrere Minuten in Anspruch nehmen.

  11. Suchen Sie die heruntergeladene Datei .csv auf Ihrem Computer.
    Tipp:

    Der Dateiname beginnt mit deep_sea_corals_, gefolgt von einer Zeichenfolge, z. B. deep_sea_corals_f6a2_cb18_f6f1.csv.

  12. Ziehen Sie die .csv-Datei in den Ordner DeepSeaCoralSponge, den Sie zuvor erstellt haben.

Sie haben Daten zu Tiefseekorallen in der Region Nordpazifik heruntergeladen. Als Nächstes laden Sie Küstenreliefmodelle für die Projektflächen herunter.

NOAA-Küstenreliefmodelle herunterladen

Die NOAA-Küstenreliefmodelle sind öffentliche Raster-Datasets mit integriertem Tiefsee- und Küsten-Terrain. Sie laden das Modell für Südkalifornien herunter.

  1. Rufen Sie die Seite NCEI Geoportal auf.

    Da das Untersuchungsgebiet Catalina Island ist, laden Sie Daten für die Region Südkalifornien herunter.

  2. Geben Sie U.S. Coastal Relief Model - Southern California Version 2 in das Suchfeld ein, und drücken Sie die Eingabetaste.

    Suche nach US-Küstenreliefmodell für Südkalifornien auf der NCEI Geoportal-Website

  3. Klicken Sie in den Suchergebnissen auf U.S. Coastal Relief Model - Southern California Version 2.

    Suchergebnis für "U.S. Coastal Relief Model - Southern California Version 2"

  4. Führen Sie einen Bildlauf zum Abschnitt Download Data durch, und klicken Sie auf den zweiten Link Download NetCDF File.

    Link zum Herunterladen der NetCDF-Datei

    Die heruntergeladene Datei crm_socal_3as_vers2.nc enthält eine Version der Daten in einer Auflösung von 3 Bogensekunden (90 Meter). Der andere Link Download NetCDF File verweist auf eine Datenversion in einer Auflösung von einer Bogensekunde (30 Meter). Für die Zwecke dieses Lernprogramms sind Daten in einer 90-Meter-Auflösung jedoch ausreichend.

    Tipp:

    Die Datei ist 512 MB groß. Abhängig von der Verbindungsgeschwindigkeit kann es mehrere Minuten dauern, bis die Daten auf den Computer heruntergeladen wurden.

  5. Suchen Sie nach dem Download nach der Datei crm_socal_3as_vers2.nc auf dem Computer, und ziehen Sie ihn in den Projektordner.
  6. Klicken Sie mit der rechten Maustaste auf die Datei crm_socal_3as_vers2.nc, und benennen Sie sie in SouthernCABathymetry.nc um.

    Die .csv-Datei deep_sea_corals_ enthält eine Zeile, in der die Einheiten der Spalten für die Breitengrade, Längengrade und Tiefe erläutert werden. Dies ist hilfreich für Forschende, die die Tabelle als Kalkulationstabelle öffnen, es verursacht jedoch Probleme, wenn Sie die Tabelle in Punkt-Features konvertieren. Öffnen Sie die .csv-Datei in einem Tabellenkalkulations-Editor, und löschen Sie die Zeile.

  7. Öffnen Sie die .csv-Datei deep_sea_corals_ in Microsoft Excel (oder dem Tabellenkalkulations-Editor Ihrer Wahl).

    Die zweite Zeile enthält eine Textbeschreibung der Einheiten für die Spalten K, L, M und T. Die Datenwerte, die importiert werden sollen, befinden sich in den Zeilen nach Zeile 2.

    Zweite Zeile in der CSV-Datei

  8. Klicken Sie auf die Zeilennummer für Zeile 2, um sie auszuwählen.

    Für Zeile 2 ausgewählte Zeilennummer

  9. Klicken Sie mit der rechten Maustaste auf die Zeile, und wählen Sie Löschen aus.

    "Löschen" im Kontextmenü der ausgewählten Zeile

    Die Zeile wird gelöscht. Die Datentabelle ist jetzt ordnungsgemäß formatiert und kann in eine Geodatabase importiert werden.

    Die Zeile wurde gelöscht und die .csv-Datei kann als Geodatabase importiert werden

  10. Klicken Sie auf die Schaltfläche Speichern, und schließen Sie die Datei.

Sie haben öffentliche NOAA-Daten heruntergeladen und deren Formatierung angepasst, damit sie in die Geodatabase importiert werden können. Als Nächstes fügen Sie die Daten ArcGIS Pro hinzu, bereiten die NetCDF-Daten für die Analyse vor und erstellen Punkte aus der Geodatabase-Tabelle.


Küstenreliefmodell importieren

Die heruntergeladenen Datasets stellen nur einen kleinen Teil der von NOAA veröffentlichten Daten dar. In diesem Abschnitt erfahren Sie, wie Sie mit den Küstenreliefmodellen abgeleitete Raster für die Umgebung um Santa Catalina Island erstellen. Die abgeleiteten Informationen werden dann in die Datenbank für Korallen- und Schwammvorkommen integriert.

Daten hinzufügen und Symbolisierung ändern

Als Nächstes starten Sie ein neues Projekt in ArcGIS Pro und fügen dem Projekt Daten hinzu.

  1. Öffnen Sie ArcGIS Pro.
  2. Klicken Sie im Abschnitt Neues Projekt auf Karte.
  3. Geben Sie dem Projekt den Namen Deep Sea Coral and Sponge Database.

    Neues Projekt mit dem Namen "Deep Sea Coral and Sponge Database"

  4. Klicken Sie auf OK.
    Hinweis:

    Wenn der Bereich Katalog nicht geöffnet ist, klicken Sie auf die Registerkarte Anzeigen und auf Bereich "Katalog".

  5. Blenden Sie im Bereich Katalog den Container Datenbanken ein.

    Pfeil "Erweitern" für "Datenbanken" im Bereich "Katalog"

    Als Sie das Projekt erstellt haben, wurde von ArcGIS Pro eine neue Datenbank zum Speichern der Projektdaten generiert. Sie importieren die CSV-Tabelle in diese Geodatabase.

  6. Klicken Sie mit der rechten Maustaste auf Deep Sea Coral and Sponge Database, zeigen Sie auf Importieren, und klicken Sie auf Tabelle(n).

    Tabellen in die Datenbank für Tiefseekorallen und -schwämme importieren

  7. Wählen Sie unter Eingabetabelle die .csv-Datei aus, die Sie in einem früheren Teil dieses Lernprogramms heruntergeladen und bearbeitet haben.

    Zuvor in diesem Lernprogramm heruntergeladene und bearbeitete CSV-Datei wird der Eingabetabelle im Werkzeugbereich "Tabelle in Geodatabase" hinzugefügt.

  8. Klicken Sie auf Ausführen.

    Die Ausführung des Werkzeugs dauert 1-2 Minuten. In dieser Zeit wird die CSV-Tabelle in die Geodatabase importiert.

  9. Blenden Sie die Geodatabase im Bereich Katalog ein, und ziehen Sie die Tabelle auf die Karte.

    Tabelle auf die Karte ziehen

    Die Tabelle wird dem Abschnitt Standalone-Tabellen im Bereich Inhalt hinzugefügt.

  10. Klicken Sie im Bereich Inhalt mit der rechten Maustaste auf die Tabelle deep_sea_corals, und wählen Sie XY-Daten anzeigen aus.

    "XY-Daten anzeigen" für "deep_sea_corals" unter "Standalone-Tabellen"

  11. Geben Sie im Bereich XY-Daten anzeigen den Namen CoralandSpongeLocations für Ausgabe-Feature-Class ein.

    Das Werkzeug ermittelt, dass die Tabelle Längen- und Breitengradfelder enthält, und weist diese den Eingabeparametern X-Feld und Y-Feld zu.

  12. Klicken Sie auf OK.

    Bereich "XY-Daten anzeigen"

    Die Ausführung des Werkzeugs dauert etwa eine Minute. Wenn sie abgeschlossen ist, wird die neue CoralandSpongeLocations-Feature-Class der Karte hinzugefügt.

    CoralandSpongeLocations-Feature-Class wird dem Bereich "Inhalt" und der Karte hinzugefügt

    Die Tabelle deep_sea_corals wird nicht mehr benötigt.

  13. Klicken Sie im Abschnitt Standalone-Tabellen mit der rechten Maustaste auf die Tabelle deep_sea_corals, und klicken Sie auf Entfernen.

    "Entfernen" für die Tabelle "deep_sea_corals"

    Als Nächstes bearbeiten Sie die Symbolisierung für den Layer CoralandSpongeLocations.

  14. Klicken Sie mit der rechten Maustaste auf den Layer CoralandSpongeLocations, und klicken Sie auf Symbolisierung.

    "Symbolisierung" für den Layer "CoralandSpongeLocations"

    Der Bereich Symbolisierung wird angezeigt.

  15. Klicken Sie im Bereich Symbolisierung auf die Dropdown-Liste Primäre Symbolisierung, und klicken Sie dann auf Einzelwerte.

    "Einzelwerte" für "Primäre Symbolisierung" im Bereich "Symbolisierung" für den Feature-Layer "CoralandSpongeLocations"

  16. Klicken Sie auf die Dropdown-Liste Feld 1 und dann auf VernacularNameCategory.

    "Feld 1" mit Einstellung "VernacularNameCategory"

  17. Schließen Sie den Bereich Symbolisierung.
  18. Klicken Sie auf der Symbolleiste für den Schnellzugriff auf die Schaltfläche Speichern, um das Projekt zu speichern.

    "Speichern" auf der Symbolleiste für den Schnellzugriff

Koordinatensystem für die Karte festlegen

Sie möchten die Faktoren untersuchen, die die Verteilung von Korallen und Schwämmen in den Gewässern um Catalina Island vor der Küste von Kalifornien bestimmen. Dazu legen Sie als Koordinatensystem der Karte ein projiziertes Koordinatensystem speziell für Kalifornien fest, um Genauigkeit zu gewährleisten.

  1. Doppelklicken Sie im Bereich Inhalt auf Karte.

    Das Fenster Karteneigenschaften wird angezeigt.

  2. Klicken Sie im Fenster Karteneigenschaften auf die Registerkarte Koordinatensysteme.

    Registerkarte "Koordinatensysteme" im Fenster "Karteneigenschaften"

  3. Geben Sie NAD 1983 California (Teale) Albers in das Feld Verfügbare XY-Koordinatensysteme ein, und drücken Sie die Eingabetaste.
  4. Blenden Sie Projiziertes Koordinatensystem und danach State Systems ein, und klicken Sie auf NAD 1983 California (Teale) Albers (Meters).

    Suchen und Auswählen von "NAD 1983 California (Teale) Albers (Meters)".

  5. Klicken Sie auf OK.

    Als Koordinatensystem der Karte wird NAD 1983 California (Teale) Albers festgelegt und für die XY-Einheiten der Karte werden Meter ausgewählt.

    Koordinatensystem der Karte wird in "NAD 1983 California (Teale) Albers" geändert

    Diese Projektion wurde so optimiert, dass Flächenberechnungen für den US-Bundesstaat Kalifornien unterstützt werden. Sie können erkennen, dass der Rest der Welt verzerrt dargestellt wird. Da sich der Interessenbereich jedoch im weniger verzerrten Bereich befindet, stellt dies kein Problem dar. Sie extrahieren die für Ihre Untersuchung relevanten Punkte, entsprechend ist die Verzerrung von Punkten in weit entfernten Teilen des Pazifischen Ozeans ebenfalls kein Problem.

Daten für das Projekt auswählen

Nachdem Sie nun die Daten für den gesamten nördlichen Pazifik heruntergeladen haben, legen Sie einen Interessenbereich für das Projekt fest und schneiden die Daten dann auf dieses Gebiet zu. Auf diese Weise können Sie mit einer überschaubareren Teilmenge an Daten arbeiten.

  1. Klicken Sie im Bereich Katalog auf Portal und dann auf ArcGIS Online. Geben Sie in der Suchleiste California_Detail_Learn_ArcGIS ein.
    Hinweis:

    Um den Bereich Katalog zu öffnen, klicken Sie im Menüband auf die Registerkarte Ansicht und in der Gruppe Fenster auf Bereich "Katalog".

    Die Registerkarten "Portal" und "ArcGIS Online" im Bereich "Katalog"

  2. Ziehen Sie den Layer California_Detail_Learn_ArcGIS von Learn_ArcGIS aus den Suchergebnissen auf die Karte.
  3. Klicken Sie im Bereich Inhalt mit der rechten Maustaste auf dtl_st_trim, klicken Sie auf Umbenennen, und geben Sie dem Layer den Namen California.
  4. Klicken Sie auf dem Menüband auf die Registerkarte Karte und dann in der Gruppe Abfrage auf Suchen.

    "Suchen" in der Gruppe "Abfrage" auf der Registerkarte "Karte"

  5. Geben Sie im Bereich Suchen den Text Catalina Island in die Suchleiste ein, und klicken Sie auf Catalina Island, CA, USA.

    Suchergebnis für Catalina Island im Bereich "Suchen"

    Die Karte zoomt auf Catalina Island.

  6. Klicken Sie in der unteren Ecke des Kartenfensters auf die Dropdown-Maßstabsanzeige, und wählen Sie 1:500,000 aus.

    Maßstabsanzeige mit Einstellung "1:500,000"

  7. Klicken Sie auf dem Menüband auf die Registerkarte Karte und dann im Abschnitt Navigieren auf Erkunden.

    "Erkunden" in der Gruppe "Navigieren" auf der Registerkarte "Karte"

  8. Klicken Sie auf die Karte und schwenken Sie sie, bis sich Catalina Island in der Mitte befindet.
  9. Klicken Sie in der Gruppe Auswahl auf Auswählen.

    "Auswählen" in der Gruppe "Auswahl" auf der Registerkarte "Karte"

    Um nur die Korallen- und Schwammpunkte auszuwählen, legen Sie fest, dass nur der Layer CoralandSpongeLocations ausgewählt werden kann.

  10. Klicken Sie im Bereich Inhalt mit der rechten Maustaste auf den Layer CoralandSpongeLocations, zeigen Sie auf Auswahl, und klicken Sie auf Als einzigen auswählbaren Layer festlegen.
  11. Achten Sie darauf, dass das Werkzeug Auswählen aktiviert ist, und ziehen Sie einen Rahmen um die Korallen- und Schwammpunkte in den Gewässern um Catalina Island auf.

    Aufgezogener Rahmen um Korallen- und Schwammpunkte um Catalina Island bei aktiviertem Werkzeug "Auswählen"

    Die ausgewählten Punkte werden in Cyan hervorgehoben, um anzugeben, dass die Punkte ausgewählt sind.

    Die ausgewählten Punkte werden auf der Karte hervorgehoben.

  12. Klicken Sie im Bereich Inhalt mit der rechten Maustaste auf CoralandSpongeLocations, zeigen Sie auf Daten, und klicken Sie auf Features exportieren.

    "Features exportieren" für die Option "Daten" des Layers "CoralandSpongeLocations"

  13. Geben Sie im Fenster Features exportieren für Ausgabe-Feature-Class den Namen CoralandSpongeCatalina ein.

    Einstellung für "Ausgabe-Feature-Class" im Fenster "Features exportieren"

    Das Werkzeug gibt die Meldung aus, dass die Eingabe über eine Auswahl verfügt. Abhängig vom ausgewählten Bereich wurden mehr oder weniger Punkte ausgewählt. Die genaue Anzahl ist nicht wichtig, ideal sind etwa 6.000 Punkte.

    Vor der Ausführung des Werkzeugs legen Sie die Projektion der Ausgabe-Feature-Class fest.

  14. Klicken Sie im Werkzeug Features exportieren auf die Registerkarte Umgebungen.
  15. Klicken Sie im Abschnitt Ausgabe-Koordinaten auf die Dropdown-Liste Ausgabe-Koordinatensystem und dann auf Aktuelle Karte [Map].

    "Ausgabe-Koordinatensystem" mit Einstellung "Aktuelle Karte [Map]" im Fenster "Features exportieren"

  16. Klicken Sie auf OK.

    Die ausgewählten Features für den Interessenbereich um Catalina Island werden vom Werkzeug exportiert. Wenn Sie über mehr als ein Untersuchungsgebiet verfügen, können Sie dieselbe Methode für das Festlegen des Koordinatensystems in ein entsprechendes Koordinatensystem für die Analyse an diesem Ort verwenden, auf diesen Ort zoomen, Features auswählen und diese mit dem Kartenkoordinatensystem exportieren, um andere Datasets für die Analyse und den Vergleich zu erstellen.

  17. Deaktivieren Sie im Bereich Inhalt den Layer CoralandSpongeLocations.

    Nun werden nur die um Catalina Island ausgewählten Features angezeigt.

    Korallen in Kalifornien

  18. Speichern Sie das Projekt.
    Tipp:

    Sie können das Projekt auch speichern, indem Sie Strg+S drücken.

Umgebendes Rechteck erstellen

Als Nächstes erstellen Sie ein umgebendes Rechteck für den Interessenbereich und importieren das Küstenreliefmodell als Raster.

  1. Öffnen Sie bei Bedarf Ihr Projekt in ArcGIS Pro.
  2. Klicken Sie auf dem Menüband auf Analyse, danach auf Werkzeuge.

    "Werkzeuge" in der Gruppe "Geoverarbeitung" auf der Registerkarte "Analyse"

    Daraufhin wird der Bereich Geoverarbeitung angezeigt.

  3. Geben Sie im Bereich Geoverarbeitung in der Suchleiste Minimum Bounding Geometry ein. Klicken Sie in der Ergebnisliste auf das Werkzeug Minimale Begrenzungsgeometrie.

    Werkzeug "Minimale Begrenzungsgeometrie"

  4. Legen Sie im Werkzeugbereich Minimale Begrenzungsgeometrie die folgenden Parameter fest:
    • Wählen Sie für Eingabe-Features die Option CoralandSpongeCatalina aus.
    • Geben Sie für Ausgabe-Features den Text CatalinaBoundary ein.
    • Wählen Sie für Geometrietyp den Typ Umschlag aus.

    Parametereinstellungen für den Werkzeugbereich "Minimale Begrenzungsgeometrie"

  5. Klicken Sie auf Ausführen.
  6. Klicken Sie im Bereich Inhalt auf das Symbol für den Layer CatalinaBoundary.

    Symbol für "CatalinaBoundary" im Bereich "Inhalt"

  7. Klicken Sie im Bereich Symbolisierung auf die Registerkarte Galerie, und wählen Sie Schwarze Umrisslinie (2pt) aus.

    "Schwarze Umrisslinie (2pt)" auf der Registerkarte "Galerie" im Bereich "Symbolisierung"

    Sie verfügen jetzt über ein Polygon, das Ihr Untersuchungsgebiet darstellt, sowie über eine Reihe von Punkten für Korallen- und Schwammbeobachtungen innerhalb dieses Gebiets.

    CatalinaBoundary-Polygon

Bathymetrische Daten hinzufügen

Das Küstenreliefmodell liegt im NetCDF-Format vor. NetCDF ist ein Datenformat, das häufig in der Ozeanografie zum Freigeben array-orientierter wissenschaftlicher Daten verwendet wird. Sie erstellen ein Raster-Dataset aus der NetCDF-Datei für die Analyse.

  1. Klicken Sie im Bereich "Geoverarbeitung" auf die Pfeilschaltfläche "Zurück". Geben Sie NetCDF-Raster-Layer erstellen ein, und klicken Sie auf NetCDF-Raster-Layer erstellen, um das Werkzeug zu öffnen.

    Werkzeug "NetCDF-Raster-Layer erstellen" suchen und öffnen

  2. Klicken Sie im Werkzeugbereich NetCDF-Raster-Layer erstellen für Eingabe-netCDF-Datei auf die Schaltfläche Durchsuchen.
  3. Navigieren Sie im Fenster Eingabe-netCDF-Datei zum Ordner C:\DeepSeaCoralSponge (oder dem Speicherort der Datei crm_socal_3as_vers2.nc).

    Auswahl der Datei "SouthernCABathymetry.nc" im Fenster "Eingabe-netCDF-Datei"

  4. Klicken Sie auf SouthernCABathymetry.nc und dann auf OK.

    Für den Parameter Variable ist Band1 festgelegt und für die Werte X-Dimension und Y-Dimension lauten die Einstellungen lon und lat.

    Parameter werden für das Werkzeug "NetCDF-Raster-Layer erstellen" ausgefüllt

  5. Klicken Sie auf Ausführen.
    Tipp:

    Dieser Schritt kann einige Minuten in Anspruch nehmen.

    Bathymetrischer Layer

    Der Raster-Layer für das gesamte Gebiet Südkaliforniens wird angezeigt.

  6. Speichern Sie Ihr Projekt.

Layer für die Analyse vorbereiten

Damit die heruntergeladenen Daten richtig analysiert werden können, projizieren Sie den bathymetrischen Layer und schneiden diesen aus. Es empfiehlt sich, bei der Analyse von Terrain- oder Bathymetrie-Rastern darauf zu achten, dass diese in ein projiziertes Koordinatensystem projiziert wurden, dessen Einheiten mit den Höhen- oder Tiefeneinheiten übereinstimmen. In diesem Fall wird die Tiefe in Metern angegeben. Sie projizieren das Raster auf das projizierte Koordinatensystem von Kalifornien, das Sie für den Datenrahmen und den Layer CoralandSpongeCatalina festgelegt haben. Bei diesem Koordinatensystem werden Meter als lineare Einheiten verwendet, sie stimmen also mit den Einheiten der Tiefenwerte überein.

  1. Suchen Sie im Bereich Geoverarbeitung nach dem Werkzeug Raster projizieren, und öffnen Sie es.
  2. Wählen Sie im Bereich Raster projizieren für Eingabe-Raster die Option Band1_Layer aus, und geben Sie für Ausgabe-Raster-Dataset den Namen CatalinaBathymetry ein.
  3. Klicken Sie für Ausgabe-Koordinatensystem auf das Dropdown-Menü und dann auf Aktuelle Karte [Map].

    "Ausgabe-Koordinatensystem" mit Einstellung "Aktuelle Karte [Map]"

    Das Koordinatensystem wird in das Koordinatensystem des Datenrahmens geändert.

    Koordinatensystem wird geändert

    Darüber hinaus wird automatisch eine geographische Transformation angewendet. Eine Transformation wird verwendet, wenn die geographischen Eingabe- und Ausgabe-Koordinatensysteme über unterschiedliche geographische Koordinatensysteme (GCS) verfügen, um sicherzustellen, dass die Daten ordnungsgemäß ausgerichtet werden. In diesem Fall berücksichtigt die Transformation den Unterschied zwischen dem GCS WGS 1984 der NetCDF-Daten und dem GCS NAD 1983 des Koordinatensystems California Teale Albers.

  4. Klicken Sie auf die Registerkarte Umgebung.
  5. Klicken Sie auf der Registerkarte Umgebungen im Abschnitt Verarbeitungsausdehnung auf das Dropdown-Menü Ausdehnung und dann auf CatalinaBoundary.

    Ausdehnungseinstellung "CatalinaBoundary" unter "Verarbeitungsausdehnung" im Werkzeugbereich "Raster projizieren"

    Auf diese Weise werden nur die bathymetrischen Daten im Interessenbereich projiziert, sodass sich ein kleineres Raster ergibt. Es erstreckt sich lediglich über das Untersuchungsgebiet. Durch die Beschränkung der Verarbeitungsausdehnung auf das Interessengebiet wird Speicherplatz gespart und die Verarbeitungszeit reduziert.

  6. Klicken Sie auf Ausführen.

    Auf das Interessengebiet beschränkte bathymetrische Daten

    Die Projektion des gesamten bathymetrischen Rasters kann einige Minuten in Anspruch nehmen; auf diese Weise geht es sehr viel schneller.

  7. Klicken Sie im Bereich Inhalt mit der rechten Maustaste auf CatalinaBathymetry, und klicken Sie auf Symbolisierung.
  8. Klicken Sie im Bereich Symbolisierung auf die Schaltfläche "Optionen" und dann auf Aus Layer importieren.

    "Aus Layer importieren" im Menü "Optionen" im Bereich "Symbolisierung"

    Das Werkzeug Symbolisierung aus Layer anwenden wird angezeigt.

  9. Wählen Sie unter Symbolisierungs-Layer den Layer Band1_Layer aus, und klicken Sie auf Ausführen.

    Sie haben jetzt die bathymetrischen Daten auf das Catalina-Gebiet ausgeschnitten, in ein planares Koordinatensystem projiziert und symbolisiert, deshalb benötigen Sie den größeren Layer Band1_Layer auf der Karte nicht mehr.

  10. Klicken Sie im Bereich Inhalt mit der rechten Maustaste auf Band1_Layer, und klicken Sie dann auf Entfernen.

    Layer "CatalinaBathymetry" mit aktualisierter Symbolisierung

  11. Speichern Sie das Projekt.

Raster-Analysen durchführen

Nachdem Sie das bathymetrische Raster für den Interessenbereich vorbereitet haben, leiten Sie Neigungs- und Ausrichtungs-Raster davon ab. Anhand dieser Raster werden Sie einige der Faktoren untersuchen, die sich auf die Korallen- und Schwammverteilung im Untersuchungsgebiet auswirken können.

  1. Geben Sie im Bereich Geoverarbeitung in der Suchleiste Neigung (Spatial Analyst) ein. Klicken Sie auf das Werkzeug Neigung.
  2. Wählen Sie im Bereich des Werkzeugs Neigung für Eingabe-Raster die Option CatalinaBathymetry aus. Geben Sie für Ausgabe-Raster den Namen CatalinaSlope ein.

    Festgelegte Parameter im Werkzeugbereich "Neigung"

  3. Klicken Sie auf Ausführen.

    Für jede Zelle im Interessenbereich wird die Neigung berechnet. Mit "Neigung" wird die Steilheit bei jeder Zelle einer Raster-Oberfläche identifiziert. Je niedriger der Neigungswert, desto flacher das Gelände. Je höher der Neigungswert, desto steiler das Gelände.

    Neigungs-Layer

  4. Klicken Sie im Bereich Geoverarbeitung auf die Schaltfläche "Zurück". Suchen Sie nach dem Werkzeug Ausrichtung (Spatial Analyst), und klicken Sie darauf.
  5. Wählen Sie im Bereich des Werkzeugs Ausrichtung für Eingabe-Raster die Option CatalinaBathymetry aus. Geben Sie für Ausgabe-Raster den Namen CatalinaAspect ein.

    Festgelegte Parameter im Werkzeugbereich "Ausrichtung"

  6. Klicken Sie auf Ausführen.

    Für jede Zelle im Interessenbereich wird die Ausrichtung berechnet. Mit dem Werkzeug Ausrichtung wird die Richtung der Abwärtsneigung identifiziert. Die Werte der einzelnen Zellen im Ausgabe-Raster geben die Kompassrichtung an, der die Oberfläche an dieser Position zugewandt ist.

    Neigungs-Layer

  7. Speichern Sie das Projekt.

Datenbank erweitern

Sie haben das Bathymetrie-, Neigungs- und Ausrichtungs-Raster für den Interessenbereich Santa Catalina Island erstellt. Als nächstes übernehmen Sie die Werte in die Korallen- und Schwammdatenbank. Verwenden Sie das Werkzeug Mehrfache Werte in Punkte extrahieren, um die Werte aus diesen drei Rastern den einzelnen Korallen- und Schwammpositionspunkten hinzuzufügen. Auf diese Weise können Sie Diagramme erstellen, um zu verstehen, wie die Umgebungsparameter an den Positionen, an denen Korallen und Schwämme beobachtet wurden, variieren.

  1. Öffnen Sie den Bereich Geoverarbeitung. Suchen Sie das Werkzeug Mehrfache Werte in Punkte extrahieren, und öffnen Sie es.
  2. Wählen Sie im Werkzeugbereich XY-Tabelle in Mehrfache Werte in Punkte extrahieren unter Eingabe-Features die Option CoralandSpongeCatalina aus.
  3. Wählen Sie für Eingabe-Raster Folgendes aus:
    • CatalinaBathymetry
    • CatalinaSlope
    • CatalinaAspect
  4. Geben Sie in das entsprechende Feld Ausgabefeldname Folgendes ein:
    • Bathymetry
    • Neigung
    • Ausrichtung

    Festgelegte Parameter im Werkzeugbereich "Mehrfache Werte in Punkte extrahieren"

  5. Klicken Sie auf Ausführen.
  6. Klicken Sie im Bereich Inhalt mit der rechten Maustaste auf den Layer CoralandSpongeCatalina, und klicken Sie auf Attributtabelle.
  7. Führen Sie in der Attributtabelle einen Bildlauf nach unten durch, um zu prüfen, ob die Werte Bathymetry, Slope und Aspect für die einzelnen Features hinzugefügt wurden.

    Der Attributtabelle "CoralandSpongeCatalina" hinzugefügte Werte "Bathymetry", "Slope" und "Aspect"

  8. Schließen Sie die Tabelle, und speichern Sie das Projekt.

Nachdem Sie die Korallen- und Schwammpunkte um die Umgebungsdaten erweitert haben, visualisieren Sie diese Werte im nächsten Schritt durch Diagramme.


Daten mit Python analysieren

ArcGIS Pro umfasst ArcGIS Notebooks, in dem Mitglieder der Data-Science-Community Daten analysieren. Sie verwenden Python-Code in Notebooks, um die Beziehungen zwischen den drei Umgebungsvariablen und die verschiedenen Korallen- und Schwammarten zu untersuchen. Auf diese Weise können Sie deren bevorzugte Lebensräume besser verstehen.

Diagramm mit Notebooks erstellen

Sie haben bathymetrische Daten importiert, Neigungs- und Ausrichtungs-Raster abgeleitet und die Ergebnisdaten den Korallen- und Schwammbeobachtungen hinzugefügt. Sie können Informationen durch eine Sichtinspektion der Layer ableiten, in manchen Fällen ist es jedoch einfacher, die Daten durch die Erstellung von Diagrammen zu untersuchen. Deshalb erstellen Sie nun diese Diagramme.

  1. Klicken Sie im Menüband auf die Registerkarte Analyse. Klicken Sie in der Gruppe Geoverarbeitung auf den Dropdown-Pfeil neben Python und dann auf Python-Notebook.

    "Python-Notebook" im Menü für Python

    Das Fenster Notebook wird geöffnet und es wird ein neues Notebook unter der neuen Gruppe Notebooks im Bereich Katalog aufgeführt.

    Python-Notebooks und das Python-Fenster sind zwei Möglichkeiten, Python-Code auszuführen.

    Code im Python-Fenster wird direkt nach dem Drücken der Eingabetaste ausgeführt. Notebooks ermöglicht es, mehrere Codezeilen in verschiedene Zellen einzugeben, den Code auszuführen, zu bearbeiten und dann erneut auszuführen. Notebooks sind nützlich für Prototypen-Code und Datenanalysen.

  2. Erweitern Sie im Bereich Katalog die Option Notebooks.
  3. Klicken Sie mit der rechten Maustaste auf New Notebook.ipynb, und wählen Sie Umbenennen aus.
  4. Geben Sie CoralSponge ein, und drücken Sie die Eingabetaste.
  5. Klicken Sie in die leere Zelle im Notebook.

    Leere erste Zelle

  6. Kopieren Sie die folgende Codezeile zum Importieren des ArcPy-Moduls in die Zelle, oder geben Sie den Text ein:
    import arcpy

    Bei Python wird zwischen der Groß- und Kleinschreibung unterschieden, deshalb muss diese mit dem Text übereinstimmen.

  7. Klicken Sie auf der Werkzeugleiste über der ersten Zelle auf die Schaltfläche Ausführen.

    "Ausführen" auf der Werkzeugleiste

    Während der Ausführung der Zelle wird ein Sternchen * in Klammern [*] angezeigt. Nach der Ausführung wird das Sternchen durch die Ziffer 1 ersetzt, und unter der ersten Zelle wird eine neue leere Zelle angezeigt.

    Neue Zelle unterhalb wird angezeigt

    Das arcpy-Modul enthält Python-Code zur Unterstützung vieler Desktop-Mapping- und Analyse-Tasks.

    Während der Eingabe von Code in eine Zelle kann es zu Fehlern kommen (z. B. Tippfehler). In diesem Fall wird nach der Zelle ggf. eine Fehlermeldung angezeigt.

  8. Klicken Sie in die zweite Zelle, und geben Sie import ARCPY ein. Klicken Sie dann auf die Schaltfläche Ausführen.

    Fehler bei der Ausführung von "import ARCPY"

    Diese Codezeile verursacht einen Fehler, da in Python kein Modul mit dem Namen ARCPY installiert ist. Die ursprüngliche erste Zeile, import arcpy, wird ordnungsgemäß ausgeführt. ARCPY (oder arcPy, ArcPy oder eine andere Variation abgesehen von arcpy) kann nicht importiert werden. Aus diesem Beispiel geht hervor, wie sich die Berücksichtigung der Groß- und Kleinschreibung auf den Code in Python auswirkt. Kleinere Tippfehler, die wir Menschen überlesen und verstehen, verursachen Fehler in Python-Code.

    Als Nächstes schreiben Sie Code, um ein Diagramm aus Ihren Daten zu erstellen. Dazu verwenden Sie die Chart-Klasse aus arcpy.

  9. Löschen Sie die Zeile import ARCPY in der zweiten Zelle.

    Sie ersetzen den Code in der zweiten Zelle durch Code, der im Grunde das bewirkt, was auch geschehen würde, wenn Sie ein Diagramm mit der grafischen ArcGIS Pro-Bedienoberfläche erstellen. Wenn Sie jedoch ein Diagramm mit der arcpy.Chart-Klasse erstellen, verwenden Sie eine Reihe von Python-Befehlen, um die Details des Diagramms anzugeben. Sie klicken nicht auf die Elemente der Bedienoberfläche.

  10. Kopieren Sie den folgenden Code, und fügen Sie ihn in die zweite Zelle ein:
    my_chart = arcpy.Chart('my_chart')
    my_chart.type = 'bar'
    my_chart.title = 'CoralandSpongeCatalina'  
    my_chart.description = 'This chart shows the mean Slope values that correspond with the taxa in the CoralandSpongeCatalina layer.'

    Mit der ersten Zeile (my_chart = arcpy.Chart('my_chart')) wird eine Variable erstellt und mit einem neuen Objekt, das der Chart-Klasse angehört, gleichgesetzt. Der Name dieses Objekts lautet my_chart. Sie können sich die Chart-Klasse als eine Vorlage für Diagramme vorstellen. Nachdem Sie eine solche erstellt haben, müssen Sie angeben, um welche Art von Diagramm es sich handelt und über welche Eigenschaften es verfügt. Dies wird durch die verbleibenden Codezeilen bewirkt.

    Durch die nächste Zeile (my_chart.type = 'bar') wird angegeben, dass ein Balkendiagramm erstellt wird. Die Typeneigenschaft des Diagramms wird als "bar" angegeben. Mit der Schreibweise my_chart.type wird die Typeneigenschaft von my_chart aufgerufen, und das Gleichheitszeichen wird zum Zuweisen des Werts 'bar' zu dieser Eigenschaft verwendet. Die Chart-Objektklasse unterstützt verschiedene Diagrammtypen, die durch Namen identifiziert werden, z. B. "bar", "line" und "scatter". Diese Namen werden als Python-Zeichenfolgen in Anführungszeichen angegeben.

    Die nächsten Zeilen, die mit my_chart.title und my_chart.description beginnen, geben einen Titel und eine Beschreibung für das Diagramm an. Das geschieht im Code auf die gleiche Weise wie beim Festlegen des Typs – durch den Zugriff auf Eigenschaften des my_chart-Objekts und das Festlegen bestimmter Zeichenfolgenwerte für diese. In diesem Fall haben Sie keine Beschreibung in ein Textfeld eingegeben, sondern eine Python-Zeichenfolge in einer Codezeile hinzugefügt.

  11. Kopieren Sie den folgenden Code, und fügen Sie ihn unten in der Zelle ein:
    my_chart.xAxis.field = 'VernacularNameCategory'
    my_chart.xAxis.aggregation = 'VernacularNameCategory'
    my_chart.xAxis.title = 'Name'
    my_chart.yAxis.field = 'Slope'
    my_chart.yAxis.title = 'Mean Slope'
    my_chart.bar.aggregation = 'MEAN'

    Die nächsten drei Zeilen (beginnend mit my_chart.xAxis) geben an, welches Feld im Layer für die X-Achse verwendet wird und wie die Werte in dieser Spalte aggregiert werden. Für diese zwei Zeilen ist VernacularNameCategory ein Feld in der Attributtabelle des Layers CoralandSpongeCatalina, das die Namen der verschiedenen Korallen und Schwämme enthält. Die Angabe von VernacularNameCategory für die Aggregation bedeutet, dass die Werte nach den eindeutigen Werten in diesem Feld gruppiert werden. Als Nächstes wird der Titel der X-Achse als Name festgelegt, um diese Achse als Korallen- und Schwammnamen zu bezeichnen.

    Die zwei Zeilen ab my_chart.yAxis sowie my_chart.bar.aggregation geben das Feld, den Titel und die Aggregationsmethode für die Y-Achse an. Dafür wird das Feld Slope aus der Datentabelle verwendet und mit dem Mittelwert aggregiert. Die Y-Achse wird mit Mean Slope beschriftet, da sie den Mittelwert der Neigung der einzelnen Korallen- und Schwammgruppen angibt.

    Hinweis:

    Wenn Sie bei der Ausführung des Werkzeugs Mehrfache Werte in Punkte extrahieren die Standard-Ausgabefeldnamen akzeptiert haben, müssen Sie in der Attributtabelle des Layers CoralandSpongeCatalina den Namen des Feldes nachsehen, in dem die Neigungswerte aufgeführt sind. Sie müssen die Zeile my_chart.yAxis.field = 'Slope' so bearbeiten, dass der richtige Feldname enthalten ist, sofern dieser nicht Slope lautet.

  12. Kopieren Sie den folgenden Code, und fügen Sie ihn unten in der Zelle ein:
    my_chart.dataSource = 'CoralandSpongeCatalina'
    my_chart.addToLayer = 'CoralandSpongeCatalina'

    Mit diesen letzten zwei Zeilen wird nun zuletzt der Layer in der Karte angegeben, der als Datenquelle dient, und das Diagramm wird dem Layer hinzugefügt.

    Hinweis:

    Wenn Sie dem Layer einen anderen Namen als CoralandSpongeCatalina gegeben haben, müssen Sie diese Zeile bearbeiten, damit sie mit dem Layer-Namen übereinstimmt.

    Die Zelle ist vollständig.

    Vollständiger Code zur Erstellung des Diagramms

  13. Klicken Sie auf Ausführen.

    Das Diagramm wird erstellt, es scheint jedoch nichts zu geschehen. Um das Diagramm sehen zu können, müssen Sie Python-Code ausführen, damit eine Anzeige erfolgt.

  14. Kopieren und fügen Sie den folgenden Code in die nächste neue Zelle ein, und klicken Sie auf Ausführen:

    my_chart

    Das Diagramm wird unter der Zelle angezeigt.

    Ausgabe des ersten Diagramms

  15. Kopieren Sie den folgenden Code, und fügen Sie ihn in die nächste Zelle ein:
    outChartName = "CoralandSpongeCatalinaSlope.svg"
    outSVGPath = "C:/Lessons/DeepSeaCoralSponge/" + outChartName
    my_chart.exportToSVG(outSVGPath, width=1500, height=800)

    Code in die Zelle exportieren

    Hinweis:

    Wenn Sie den Projektordner DeepSeaCoralSponge in einem anderen Verzeichnis als C:/Lessons/DeepSeaCoralSponge/ erstellt haben, bearbeiten Sie den Pfad in der Zelle, sodass er dem Pfad auf dem Computer entspricht. Auffällig ist bei diesem Pfad die Verwendung von normalen Schrägstrichen als Trennzeichen. In Python wird das Zeichen \ als Escape-Zeichen verwendet, das in Kombination mit anderen Zeichen auf Zeilenumbrüche oder Tabstopps hinweist, deshalb empfiehlt es sich, für diesen Pfad den normalen Schrägstrich zu verwenden.

    Die erste Codezeile (ab outChartName =) definiert einen Dateinamen – einschließlich der Dateierweiterung – für die Diagrammdatei. Beim Dateinamen handelt es sich um eine in Anführungszeichen stehende Zeichenfolge.

    Die zweite Zeile (outSVGPath =) definiert eine Zeichenfolge, die den Pfad angibt, in dem die Datei gespeichert werden soll. Der Dateiname wurde durch das Zeichen + daran angefügt. Mit diesem Zeichen können Textzeichenfolgen in einer sogenannten Verkettung miteinander verbunden und Ziffern in Python hinzugefügt werden.

    Mit der dritten Zeile (my_chart.exportToSVG) werden die exportToSVG-Methode des Diagrammobjekts aufgerufen und der vollständige Pfad mit dem Dateinamen sowie die Breite und Höhe in Pixeln in Klammern als Parameter der Methode angegeben.

  16. Führen Sie die Zelle aus.

    Die Diagrammdatei wird im Ordner erstellt.

  17. Navigieren Sie auf dem Computer im Microsoft File Explorer zum Ordner, und öffnen Sie das Diagrammbild.

    Das Diagramm ist größer als das im Notebook angezeigte, da Sie andere Abmessungen für das Ausgabediagramm angegeben haben.

  18. Schließen Sie das Diagramm, nachdem Sie es untersucht haben.

Diese Methode scheint zunächst sehr aufwändig zu sein, besonders im Vergleich zum Klicken durch die ArcGIS Pro-Oberfläche. Die Verwendung von Code hat jedoch den Vorteil, dass der Prozess automatisiert werden kann. Im nächsten Abschnitt erfahren Sie, wie Sie diesen Code in eine Funktion umwandeln, die Sie für die Erstellung mehrerer Diagramme aufrufen können.

Diagrammfunktion erstellen

Sie haben gesehen, wie sich ein einzelnes Diagramm mit Python-Code erstellen lässt. Nun passen Sie diesen Code an, um ihn besser wiederverwenden zu können. Sie erstellen eine Python-Funktion, mit der Sie mehrere Diagramme erstellen können.

  1. Kopieren Sie den folgenden Code, und fügen Sie ihn in die nächste Zelle ein:
    def coral_and_sponge_chart(layer, field):

    Die Zeile beginnt mit def. Damit wird Python mitgeteilt, dass Sie eine neue Funktion definieren. Der nächste Teil ist der Name der Funktion, coral_and_sponge_chart. Über Funktionsnamen verweisen Sie auf den Code-Block innerhalb der Funktion, wenn Sie diesen Code ausführen möchten. Der nächste Teil steht in Klammern. Dabei handelt es sich um die Parameter, die von der Funktion übernommen werden. Parameter sind Eingaben in eine Funktion, die von der Funktion verarbeitet werden, um ein Ergebnis zu erzeugen. Diese Funktion hat einen Layer und einen Feldnamen als Eingaben. Sie erstellt ein Balkendiagramm für dieses Feld. Die Zeile endet mit einem Doppelpunkt. Das bedeutet, dass die nächsten Zeilen aus dem Code-Block für die Funktion bestehen.

  2. Drücken Sie die Eingabetaste.

    Wenn Sie nach der Zeile, die die Funktionsdefinition startet, die Eingabetaste drücken, wird die nächste Zeile um vier Leerzeichen eingerückt.

  3. Kopieren Sie den folgenden Code, und fügen Sie ihn in die Zelle ein:
    my_chart = arcpy.Chart('MyChart')
        my_chart.type = 'bar'

    Jede dieser zwei Zeilen entspricht dem Code, den Sie auch schon für die Erstellung des vorherigen Diagramms verwendet haben, sie sind jedoch um vier Leerzeichen eingerückt. Python verwendet Einrückungen zum Gruppieren von Code-Abschnitten. Die Zeilen des Code-Blocks innerhalb dieser Funktion sollten alle um vier Leerzeichen eingerückt sein.

    Drei Codezeilen in derselben Zelle eingegeben

    Mit diesen Zeilen wird ein Diagramm aus der Chart-Klasse erstellt und angegeben, dass es sich dabei um ein Balkendiagramm handeln soll.

  4. Drücken Sie die Eingabetaste, kopieren Sie den folgenden Code, und fügen Sie ihn nach der Zeile chart.type in die Zelle ein:
    my_chart.title = layer

    Diese Zeile beginnt wie die nächste Zeile im ursprünglichen Diagrammcode. Der Titel des Diagramms wird jedoch nicht als spezifische Zeichenfolge angegeben; vielmehr soll der Titel mit dem Eingabe-Layer-Parameter übereinstimmen. Das bedeutet, dass der Titel der Ausgabediagramme mit dem Layer-Namen übereinstimmt, unabhängig davon, um welchen Layer es sich handelt.

  5. Kopieren Sie den folgenden Code, und fügen Sie ihn nach der Zeile my_chart.title in die Zelle ein:
    my_chart.description = f'This chart shows the mean {field} values that correspond with the taxa in the {layer} layer.'

    Diese Zeile weist nur wenige Unterschiede zu der Zeile im ursprünglichen Diagrammcode auf. Der erste Unterschied besteht darin, dass die Beschreibung nicht mit einer bestimmten Zeichenfolge gleichgesetzt wird, sondern mit einer f-Zeichenfolge bzw. formatierten Zeichenfolge. Formatierte Zeichenfolgen sind Zeichenfolgen, in denen Sie Werte ersetzen können. Sie beginnen mit einem f, gefolgt von einem Anführungszeichen. Das f bedeutet für Python, dass es sich hierbei um eine formatierte Zeichenfolge handelt.

    Außerdem wird nicht festgelegt, dass die Beschreibung den Text the mean Slope values enthalten soll, sondern der Code wird als the mean {field} values geschrieben. Doch was bedeutet das?

    Da dies eine f-Zeichenfolge ist, wird der Code {field} durch den Feldnamen aus den Eingabeparametern der Funktion ersetzt. Dasselbe gilt für das Ende des Codes, der in the {layer} layer enthält. {layer} wird durch den Layer-Namen ersetzt. Auf diese Weise stimmt die Beschreibung des Ausgabediagramms mit den Namen des Eingabe-Layers und -Feldes überein.

  6. Beginnen Sie in derselben Zelle eine neue Zeile. Kopieren Sie den nachfolgenden Code, und fügen Sie ihn in diese Zeile ein:
    my_chart.xAxis.field = 'VernacularNameCategory'
        my_chart.xAxis.aggregation = 'VernacularNameCategory'
        my_chart.xAxis.title = 'Name'

    Diese drei Zeilen sind mit den Linien im ursprünglichen Diagramm-Code identisch, als Teil des Code-Blocks jedoch um vier Leerzeichen eingerückt. Mit dieser Funktion wird für jeden Wert des Feldes VernacularNameCategory des Eingabe-Layers ein Balken dargestellt. Außerdem wird Name als Bezeichnung der X-Achse des Diagramms festgelegt.

    Diese Zeile kann nicht ausgeführt werden und erzeugt einen Fehler, wenn Sie die Funktion für einen Layer ausführen, der nicht über das Feld VernacularNameCategory verfügt. Da jedoch alle Punkte von CoralandSpongeLocations ein solches Feld haben, ist die Ausführung unabhängig vom ausgewählten Untersuchungsgebiet erfolgreich.

  7. Beginnen Sie in derselben Zelle eine neue Zeile. Kopieren Sie den nachfolgenden Code, und fügen Sie ihn in diese Zeile ein:
    my_chart.yAxis.field = field
        my_chart.yAxis.title = 'Name'

    Mit diesem Code werden Eigenschaften für die Y-Achse festgelegt.

  8. Beginnen Sie in derselben Zelle eine neue Zeile. Kopieren Sie den nachfolgenden Code, und fügen Sie ihn in diese Zeile ein:
    my_chart.bar.aggregation = 'MEAN'

    Diese Zeile ist mit der Zeile im ursprünglichen Code identisch. Sie sorgt dafür, dass die Balken die Mittelwerte im Eingabefeld für die einzelnen Korallen- und Schwammtypen angeben.

  9. Beginnen Sie in derselben Zelle eine neue Zeile. Kopieren Sie den nachfolgenden Code, und fügen Sie ihn in diese Zeile ein:
    my_chart.dataSource = layer 
        my_chart.addToLayer = layer

    Diese Zeilen sind den Zeilen im ursprünglichen Diagrammcode ähnlich. Statt jedoch die Datenquelle festzulegen und das Diagramm einem bestimmten benannten Layer hinzuzufügen (ursprünglich CoralandSpongeCatalina), geschieht dies für den Eingabe-Layer der Funktion. Wenn Sie eine andere Teilmenge der Korallen- und Schwammpunkte für ein anderes Untersuchungsgebiet erstellt haben (etwa um Hawaii oder vor der Küste von Alaska) und Sie dann Neigungs-, Ausrichtungs- und Bathymetriewerte zu diesem hinzugefügt und ihm einen anderen Namen gegeben haben, wird von der Funktion dennoch das Diagramm erstellt und mit dem Eingabe-Layer verknüpft.

  10. Beginnen Sie in derselben Zelle eine neue Zeile. Kopieren Sie den nachfolgenden Code, und fügen Sie ihn in diese Zeile ein:
    outChartName =  layer + field + ".svg"
        outSVGPath = "C:/Lessons/DeepSeaCoralSponge/" + outChartName
        my_chart.exportToSVG(outSVGPath, width=1500, height=800)

    Diese Zeilen sind den Zeilen im ursprünglichen Code ähnlich. Mit der Zeile outChartName wird ein Name für das Diagramm erstellt, indem der Layer-Name und der an die Funktion übergebene Feldname miteinander verkettet werden. Wenn Sie einen Layer für ein Untersuchungsgebiet in Alaska erstellt haben, ist der Name dieses Layers im Namen des Ausgabediagramms enthalten.

    Hinweis:

    Wenn Sie den Projektordner "DeepSeaCoralSponge" in einem anderen Verzeichnis als C:/Lessons/DeepSeaCoralSponge/ erstellt haben, bearbeiten Sie den Pfad, sodass er dem Pfad auf dem Computer entspricht.

  11. Beginnen Sie in derselben Zelle eine neue Zeile. Kopieren Sie den nachfolgenden Code, und fügen Sie ihn in diese Zeile ein:
    return my_chart

    Die return-Anweisung sorgt dafür, dass das Diagrammobjekt von der Funktion an den Code zurückgegeben wird, der die Funktion aufruft.

    Der Code-Block für die Erstellung des nächsten Diagramms ist vollständig.

    Vollständiger Code-Block für das nächste Diagramm

    Die erste Zeile, in der die Funktion definiert wird, sollte in der Spalte ganz links beginnen. Jede darauf folgende Zeile sollte um vier Leerzeichen eingerückt sein.

    
    def coral_and_sponge_chart(layer, field):
        my_chart = arcpy.Chart('MyChart')
        my_chart.type = 'bar'
        my_chart.title = layer
        my_chart.description = f'This chart shows the mean {field} values that correspond with the taxa in the {layer} layer.'
        my_chart.xAxis.field = 'VernacularNameCategory'
        my_chart.xAxis.aggregation = 'VernacularNameCategory'
        my_chart.yAxis.field = field
        my_chart.xAxis.title = 'Name'
        my_chart.yAxis.title = field
        my_chart.bar.aggregation = 'MEAN'
        my_chart.dataSource = layer 
        my_chart.addToLayer = layer
        outChartName = layer + field + ".svg"
        outSVGPath = "C:/Lessons/DeepSeaCoralSponge/" + outChartName
        my_chart.exportToSVG(outSVGPath, width=1500, height=800)
        return my_chart
  12. Klicken Sie auf Ausführen.

    Die Zelle sollte ausgeführt werden, ohne dass ein Ergebnis zurückgegeben wird.

    Hinweis:

    Wenn Fehlermeldungen angezeigt werden, kopieren Sie den gesamten hier angezeigten Code-Block in die Zelle, und führen Sie ihn aus. Achten Sie darauf, den Pfad für die outSVGPath-Variable in einen realen Pfad auf dem Computer zu ändern. Verwenden Sie normale Schrägstriche für den Pfadnamen.

    Warum wird bei der Ausführung der Zelle kein Ergebnis zurückgegeben?

    In diesem Code wird eine Funktion definiert, die Funktion muss jedoch von anderem Python ausgeführt oder aufgerufen werden.

  13. Kopieren Sie den folgenden Code, und fügen Sie ihn in die nächste Zeile ein:
    coral_and_sponge_chart()
  14. Führen Sie die Zelle aus.

    Eine Fehlermeldung wird geöffnet.

    Fehlermeldung

    Daraus geht hervor, dass in der Funktion zwei erforderliche Positionsargumente fehlen: "layer" und "field". Diese Werte müssen für eine ordnungsgemäße Ausführung der Funktion vorhanden sein.

  15. Ersetzen Sie den Inhalt der Zelle durch den folgenden Code, und klicken Sie auf Ausführen:
    coral_and_sponge_chart('CoralandSpongeCatalina', 'Slope')

    Das Diagramm wird im Notebook angezeigt, und es wird eine grafische .svg-Datei des Diagramms im angegebenen Ordner erstellt. Sie hat denselben Dateinamen wie die Ausgabe des ersten Codes. Wenn Sie sich die Datei jedoch jetzt ansehen, werden Sie feststellen, dass der Wert unter Änderungsdatum aktualisiert wurde.

    Das geöffnete Diagramm zeigt Neigungsmittelwerte, die mit Taxa im Layer "CoralandSpongeCatalina" übereinstimmen

    Das Ergebnis stimmt mit dem Ergebnis, das vom ersten Code-Block zurückgegeben wurde, überein. Jetzt verfügen Sie jedoch über eine Funktion, an die Sie einen Layer-Namen und einen Feldnamen übergeben können, um ein anderes Diagramm zu erhalten.

  16. Kopieren und fügen Sie den folgenden Code in die nächste Zelle ein, und klicken Sie auf Ausführen:
    myList = ['Slope', 'Aspect', 'Bathymetry']
  17. Kopieren und fügen Sie den folgenden Code in die nächste Zelle ein, und klicken Sie auf Ausführen:
    print(myList)

    Ausgeführter Code zum Drucken von myList

    In Python stehen Listen in eckigen Klammern. Sie stellen eine Möglichkeit dar, eine Gruppe von Dingen zu speichern, die durch Trennzeichen getrennt angegeben werden. In diesem Fall enthält die Liste myList drei Zeichenfolgen mit den Namen der Felder Slope, Aspect und Bathymetry.

    Wenn Sie bei der Ausführung des Werkzeugs Mehrfache Werte in Punkte extrahieren die Standard-Ausgabefeldnamen akzeptiert haben, müssen Sie in der Attributtabelle des Layers CoralandSpongeCatalina die Feldnamen nachsehen, die Werte in myList entsprechend bearbeiten und die Zelle dann erneut ausführen, um die myList-Werte zurückzusetzen.

  18. Kopieren und fügen Sie den folgenden Code in die nächste Zelle ein, und klicken Sie auf Ausführen:
    
    for envField in myList:
        outChart = coral_and_sponge_chart('CoralandSpongeCatalina', envField)

    Diese Zelle enthält ein neues Python-Code-Konstrukt, eine for-Schleife. Eine for-Schleife ermöglicht das Durchlaufen oder Iterieren einer Reihe von Elementen. Die erste Zeile gibt an, dass die Schleife jedes Element in myList durchläuft und es der temporären Variable envField zuweist. Der Doppelpunkt gibt an, dass der nächste Abschnitt der Code-Block der for-Schleife ist. Die nächste Zeile ist um vier Leerzeichen eingerückt, wie die Zeilen in der Funktionsdefinition. Die eingerückten Zeilen in einer for-Schleife blockieren alle Ausführungen der einzelnen Zyklen bzw. Iterationen der Schleife.

    In diesem Fall enthält der Code-Block nur eine Zeile. Das ist ähnlich wie bei der Zeile, die Sie zuvor zum Testen der coral_and_sponge_chart-Funktion verwendet haben. Es wird eine Variable erstellt, der Wert mit der Ausführung der coral_and_sponge_chart-Funktion im Layer CoralandSpongeCatalina gleichgesetzt wird. Statt außerdem das Feld Slope anzugeben, erfolgt die Ausführung jedoch für den Feldnamen, der aus der envField-Variable abgerufen wird. Da die Liste drei Elemente enthält, wird die Schleife drei Mal ausgeführt und ein Diagramm für jedes der drei Felder erstellt.

  19. Navigieren Sie im File Explorer des Computers zu dem Ordner, den Sie in der Funktionsdefinition angegeben haben.

    Ausgabediagramme im Ordner, den Sie zu Beginn des Lernprogramms erstellt haben

    Für jedes der Attribute sollte ein Diagramm angezeigt werden. Diese Ausgabedateien können in Präsentationen verwendet, mit ArcGIS StoryMaps einer Story hinzugefügt oder in einem Kartenlayout in ArcGIS Pro platziert werden.

    Diese Methode ist etwas schneller als eine manuelle Erstellung der drei Diagramme. Angenommen, Sie verfügen über sechs verschiedene Umgebungsvariablen, mit denen Sie die Korallen- und Schwammpunkte anreichern. Sie könnten dann eine Liste dieser Feldwerte erstellen und die Funktion aufrufen, um ein Diagramm für jedes davon in nahezu derselben Zeit zu erstellen, die es gekostet hat, diese drei zu erstellen.

    Stellen Sie sich dann vor, Sie haben fünf Untersuchungsgebiete und möchten Diagramme aller Werte für jedes Untersuchungsgebiet erstellen. Da die Funktion auch den Layer-Namen als Parameter übernimmt, könnten Sie eine Liste aller Layer-Namen erstellen, eine for-Schleife generieren, die diese durchläuft, und dann in dieser for die gerade erstellte Schleife aufrufen.

    Der Code dafür sieht folgendermaßen aus:

    
    myLayersList = ['CoralandSpongeCatalina']
    # You would add comma separated layer names in
    # quotation marks to the myLayersList, such as:
    # ['CoralandSpongeCatalina', 'CoralandSpongeAlaska', 'CoralandSpongeHawaii']
    
    myList = ['Slope', 'Aspect', 'Bathymetry']
    # You could add comma separated field names to the list
    
    for lyrName in myLayersList:     # outer loop, iterate over the layer names in the list
        for envField in myList:     # inner loop, iterate over the field names for that layer
            outChart = coral_and_sponge_chart(lyrName, envField)

    Bei 6 Variablen und 5 Untersuchungsgebieten könnten Sie 30 Diagramme in etwa derselben Zeit erstellen, die die Erstellung dieser drei in Anspruch genommen hat.

  20. Kopieren und fügen Sie den folgenden Code in die nächste Zelle ein, und klicken Sie auf Ausführen:
    outChart

    Zurückgegebenes Diagramm mit bathymetrischen Mittelwerten

    Sie haben gesehen, dass drei Diagramme durch die Schleife erstellt wurden. Warum wird nur eines davon angezeigt, wenn Sie diese Zelle ausführen?

    Die Variable outChart wird in jedem Zyklus der Schleife auf das neue Diagramm zurückgesetzt. Wenn die Schleife abgeschlossen ist, wird die Variable dem im letzten Zyklus erstellten Diagramm zugewiesen. Ein häufiges Problem beim Schreiben von Ausgabedateien aus Schleifen besteht darin, dass mehrere Ausgaben erwartet werden, jedoch nur eine vorhanden ist. Oft liegt dies daran, dass der Name der Ausgabedatei in jedem Zyklus der Schleife derselbe ist. Das Ergebnis wird in jedem Zyklus erzeugt, da der Name jedoch jeweils gleich ist, wird die Datei in jedem Zyklus überschrieben. Bei der coral_and_sponge_chart-Funktion wird dieses Problem vermieden, indem der Dateiname aus den Eingabevariablen erstellt wird.

    outChartName = layer + field + ".svg"

    Es gibt auch andere Möglichkeiten, dieses Problem zu lösen. Eine besteht darin, eine Zählervariable in die Schleife aufzunehmen und sie mit dem Namen der Ausgabedatei zu verketten, mit dem Ergebnis outfile_1, outfile_2, outfile_3 usw. Eine weitere Möglichkeit ist es, dem Dateinamen die aktuelle Zeit hinzuzufügen. Das funktioniert gut, solange es sich nicht um sehr kurze Verarbeitungszeiten handelt. Es ist auch möglich, einen eindeutigen Identifikator zu erstellen und diesen dem Dateinamen hinzuzufügen; dies führt jedoch zu langen und u. U. verwirrenden Dateinamen.

  21. Speichern Sie das Projekt.
Tipp:

Wenn Sie eine zusätzliche Herausforderung wünschen, versuchen Sie, einen anderen Interessenbereich auszuwählen und eine Reihe von Diagrammen anhand der Anleitung in diesem Lernprogramm zu erstellen.

In diesem Lernprogramm haben Sie gelernt, wie bathymetrische Daten sowie Korallen- und Schwammdaten von NOAA heruntergeladen werden. Sie haben erfahren, wie die Daten in ein entsprechendes planares Koordinatensystem für die Raster-Analyse projiziert werden. Sie können nun einen Interessenbereich erstellen, Neigungs- und Ausrichtungs-Layer für den Interessenbereich ableiten und diese Informationen an die Korallen- und Schwammattribute anhängen. Sie haben gelernt, mit Python ein Diagramm zu erstellen und eine Funktion zu definieren, um die Produktion mehrerer Diagramme zu automatisieren. Mit diesen Methoden können Sie Korallen- und Schwammdaten in mehreren Gebieten auf der ganzen Welt analysieren.

Weitere Lernprogramme finden Sie in der Lernprogrammgalerie.