ASCII in Raster (Conversion)
Zusammenfassung
Hiermit wird eine ASCII-Datei mit Raster-Daten in ein Raster-Dataset konvertiert.
Verwendung
Die Eingabedatei ist eine Textdatei im ASCII-Format.
-
Die Struktur der ASCII-Datei enthält Header-Informationen mit einer Reihe von Schlüsselwörtern und Zellenwerten in zeilenweise aufsteigender Reihenfolge.
Bei der Struktur der ASCII-Datei gibt es zwei Variationen. In einem Fall wird der Ursprung mit den Koordinaten der unteren linken Ecke der unteren linken Zelle bzw. als Mittelpunkt der unteren linken Zelle angegeben.
Normalerweise hat die Datei das folgende Format:
NCOLS xxx NROWS xxx XLLCORNER xxx YLLCORNER xxx CELLSIZE xxx NODATA_VALUE xxx row 1 row 2 . . row n
Die Definitionen der Schlüsselwörter lauten wie folgt:
NCOLS und NROWS steht für die Anzahl der Spalten und Zeilen im Raster, die von der ASCII-Datei definiert werden.
XLLCORNER und YLLCORNER steht für die Koordinaten der unteren linken Ecke der unteren linken Zelle.
Sie können den Ursprung auch mit den Koordinaten des Mittelpunktes der linken unteren Zelle angeben, indem Sie XLLCENTER und YLLCENTER verwenden.
CELLSIZE ist die Zellengröße des Rasters.
NODATA_VALUE ist der Wert, der NoData-Zellen darstellen soll.
Zellenwerte müssen durch Leerzeichen begrenzt sein. Am Ende der Zeilen in der ASCII-Datei müssen keine Absatzzeichen gesetzt werden. Anhand der Spalten in der Kopfzeile wird festgelegt, wann eine neue Zeile beginnt.
Beispiel für eine ASCII-Raster-Datei:
NCOLS 480 NROWS 450 XLLCORNER 378922 YLLCORNER 4072345 CELLSIZE 30 NODATA_VALUE -32768 43 2 45 7 3 56 2 5 23 65 34 6 32 54 57 34 35 45 65 34 2 6 78 4 2 6 89 3 2 7 45 23 5 ...
-
Der unter NODATA_VALUE angegebene Wert ist der Wert in der ASCII-Datei, der den NoData-Zellen im Ausgabe-Raster zugewiesen wird. Dieser Wert ist normalerweise den Zellen vorbehalten, deren wahrer Wert unbekannt ist. Wenn das Ausgabe-Raster erstellt wird, wird ein vom System generierter NoData-Wert anstelle des NODATA_VALUE verwendet. Das Thema NoData in Raster-Datasets enthält Informationen dazu, wie der NoData-Wert geändert werden kann, nachdem das Raster erstellt wurde.
-
Die Anzahl der in der Datei enthaltenen Zellenwerte muss der Anzahl der Zeilen multipliziert mit der Anzahl der Spalten entsprechen. Ist dies nicht der Fall, wird eine Fehlermeldung ausgegeben.
-
Als Ausgabe-Datentyp kommen entweder "Float" oder "Integer" infrage.
Verwenden Sie das Werkzeug Projektion definieren nach der Erstellung des Ausgabe-Rasters, um das richtige Koordinatensystem anzuwenden.
Syntax
Parameter | Erläuterung | Datentyp |
in_ascii_file |
Die zu konvertierende Eingabe-ASCII-Datei | File |
out_raster | Das zu erstellende Ausgabe-Raster-Dataset. Wenn Sie nicht in einer Geodatabase speichern, geben Sie beim TIFF-Dateiformat die Erweiterung .tif, beim ERDAS IMAGINE-Dateiformat die Erweiterung .img und beim Esri Grid-Raster-Format keine Erweiterung an. | Raster Dataset |
data_type (optional) |
Der Datentyp des Ausgabe-Raster-Datasets.
| String |
Codebeispiel
Hiermit wird eine ASCII-Datei mit Raster-Daten in ein Raster-Dataset konvertiert.
import arcpy arcpy.ASCIIToRaster_conversion("c:/data/elevation.asc", "c:/output/elevation", "INTEGER")
Hiermit wird eine ASCII-Datei mit Raster-Daten in ein Raster-Dataset konvertiert.
# Name: ASCIIToRaster_Ex_02.py # Description: Converts an ASCII file representing raster data to a raster # dataset. # Requirements: None # Import system modules import arcpy # Set local variables inASCII = "c:/data/elevation.asc" outRaster = "c:/output/elevation02" rasterType = "INTEGER" # Execute ASCIIToRaster arcpy.ASCIIToRaster_conversion(inASCII, outRaster, rasterType)