Python-Raster-Funktionen sind benutzerdefinierte Skripte, die zur Verarbeitung und Analyse von Rasterdaten in ArcGIS verwendet werden können. Obwohl ArcGIS eine umfassende Reihe von integrierten Raster-Funktionen bietet, können bestimmte analytische Anforderungen eigene Implementierungen erforderlich machen. Diese benutzerdefinierten Funktionen, die in Python entwickelt wurden, können in Raster-Funktionsketten integriert werden, um die Analysefunktionen der Standard-Rasteranalyse zu erweitern.
In ArcGIS Enterprise 11.5 wurde eine neue Verwaltungs-API eingeführt, um die Registrierung, Bereitstellung und Verwaltung von benutzerdefinierten Python-Raster-Funktionen zu optimieren. Diese API bietet eine unkomplizierte Schnittstelle für Administratoren zum Verwalten benutzerdefinierter Funktionen in der Unternehmensumgebung.
Ausführliche Informationen zur Verwendung dieser Verwaltungs-API finden Sie in der ArcGIS Enterprise-Dokumentation.
Anforderungen an die Paketerstellung für benutzerdefinierte Python-Raster-Funktionen
Um eine benutzerdefinierte Python-Raster-Funktion in ArcGIS Enterprise erfolgreich bereitzustellen, müssen die folgenden Voraussetzungen erfüllt sein:
- Erforderliche Dateien
- Raster-Funktionsvorlage (.rft.xml): Definiert die Raster-Funktionskette und verweist auf das verknüpfte Python-Skript.
- Python-Skript (.py): Enthält die Implementierung der benutzerdefinierten Raster-Funktionen.
Beide Dateien müssen im Bereitstellungspaket enthalten sein.
- Benennungsregeln
- Konsistenz: Der Name des Python-Skripts muss mit dem in der Raster-Funktionsvorlagendatei angegebenen Namen übereinstimmen.
- Gültige Zeichen: Dateinamen müssen mit einem Buchstaben beginnen und können Buchstaben, Zahlen und Unterstriche enthalten.
Vorsicht:
Vermeiden Sie die Verwendung von Sonderzeichen und den Beginn von Namen mit Zahlen.
- Angeben des Dateipfads
Referenzieren Sie in der Raster-Funktionsvorlage das Python-Skript mit dem Präfix [functions], gefolgt von dem relativen Pfad. Beispiel:
[functions]Custom\Subfolder\script_name.py
Die Syntax stellt sicher, dass ArcGIS das Skript im angegebenen Funktionsverzeichnis findet.
- Verzeichnisstruktur
Organisieren Sie die Dateien in dem Unterordner, der dem Dateipfadverzeichnis folgt, das Sie in der Raster-Funktionsvorlage angegeben haben. Beispiel:
"PythonModule": "[functions]Custom\\Tree_Health.py"
Bei dieser Beispiel-ZIP-Datei sollte der Inhalt die RFT-Datei und die Python-Datei enthalten.

Konzeptionsgrafik des Ordnerinhalts. - Bereitstellungspaket
Komprimieren Sie den Unterordner mit den Dateien .rft.xml und .py in ein ZIP-Archiv. Dieses Paket kann mithilfe der Verwaltungs-API registriert und bereitgestellt werden, die in ArcGIS Enterprise 11.5 eingeführt wurde.
Bereitstellung einer benutzerdefinierten Python-Raster-Funktion in ArcGIS Enterprise
Gehen Sie folgendermaßen vor, um eine benutzerdefinierte Python-Raster-Funktion in ArcGIS Enterprise bereitzustellen:
- Zugriff auf das Verzeichnis der Verwaltungs-API
- Navigieren Sie in ArcGIS Enterprise zum Verzeichnis der Verwaltungs-API.
- Melden Sie sich mit einem Konto mit Administratorberechtigungen an.
- Registrieren der benutzerdefinierten Raster-Funktion
- Gehen Sie im Verzeichnis der Verwaltungs-API zu Services > Typen.
- Wählen Sie Benutzerdefinierte Raster-Funktionen aus.
- Klicken Sie auf die Schaltfläche Registrieren.
- Verwenden Sie die Option Datei auswählen, um die ZIP-Datei mit Ihrer benutzerdefinierten Raster-Funktion zu suchen und auszuwählen.
- Klicken Sie auf Registrieren, um den Registrierungsvorgang abzuschließen.
- Überprüfen der Registrierung
- Nach erfolgreicher Registrierung wird die benutzerdefinierte Raster-Funktion unter Registrierte benutzerdefinierte Raster-Funktionen im Verzeichnis der Verwaltungs-API angezeigt.
- Greifen Sie im Portal auf Registrierte Funktion zu.
- Melden Sie sich am ArcGIS Enterprise-Portal an.
- Navigieren Sie zu Eigene Inhalte oder Eigene Organisation, um die registrierte benutzerdefinierte Raster-Funktionsvorlage zu finden.
- Verwenden der benutzerdefinierten Raster-Funktion
- Die registrierte benutzerdefinierte Raster-Funktion kann nun ähnlich wie die vom System bereitgestellten Raster-Funktionsvorlagen verwendet werden.
- Sie kann mit Werkzeugen wie dem Raster-Funktions-Editor in Rasterverarbeitungs-Workflows integriert werden.