Suite

Valeur accumulée à partir de nombreux rasters python/arcgis10


J'ai besoin de calculer une valeur cumulée de température (en tant que raster supplémentaire) à partir de nombreux rasters.

Existe-t-il une option pour le faire dans ArcGIS 10 ou des astuces pour un script python ?


Cell Statistics (Spatial Analyst) a été conçu pour ce type d'opération. Voici comment implémenter les statistiques de cellule avec Python :

import arcpy arcpy.CheckOutExtension("Spatial") # Définir l'espace de travail en entrée et créer la liste des rasters arcpy.env.workspace = r'C:path	oyour
asters' rasters = arcpy.ListRasters() # Exécuter le calcul des statistiques des cellules = arcpy.sa.CellStatistics(rasters, statistics_type = "SUM") calc.save(r'C:path	ooutput
aster.img')

Oui parfait! Ça marche. Je ne sais pas pourquoi cela (CellStat) n'a pas fonctionné dans ModelBulder et c'est la raison pour laquelle j'ai demandé.

Aussi, j'ai trouvé cette façon, un peu autour/plus longtemps.

import arcpy arcpy.CheckOutExtension("Spatial") # Définir l'espace de travail en entrée et créer la liste des rasters arcpy.env.workspace = r'X:path	o
asters' rasters = arcpy.ListRasters() i = 0 #boucle à travers les rasters in list for raster in rasters: #print raster #sum rasters together if i == 0: outSUM = arcpy.Raster(raster) i += 1 else: outSUM = outSUM + raster i += 1 #enregistrer la sortie finale dans le courant espace de travail outSUM.save('sumRas')

de https://geonet.esri.com/thread/25945

Les deux fonctionnent !

Merci à tous!