Suite

Comment calculer la surface raster par polygone ?


Dans ArcMap, j'ai un fichier raster qui contient 6 classes de couverture végétale et un fichier de formes qui sont les données de recensement (limites OA et leur population).

Je veux l'aire de chaque classe dans chaque OA ?

Par exemple, je dois ajouter six colonnes au fichier de formes du recensement (c'est-à-dire une colonne pour chaque classe) et calculer l'aire de cette classe dans l'OA appropriée…

Est-ce que n'importe qui sait comment je peux résoudre ceci ?


En supposant que vous utilisiez ArcGIS 9.3, obtenez l'extension gratuite des outils d'analyse Hawth pour ArcGIS et utilisez l'outil Zonal Statistics ++. Assurez-vous que le shapefile est dans la même projection que le raster.

Après avoir consulté le site Web des outils de Hawth pour la première fois depuis des lustres pour obtenir les liens, je viens de voir qu'ils mettent tous leurs efforts dans le développement d'un environnement de modélisation géospatiale, qui peut également faire le travail, bien que je ne l'aie pas fait. Essayé.

Enfin, vous pouvez faire les calculs manuellement. Il y a deux options :

  1. Transformez le raster en polygone, exécutez une intersection avec les limites et calculez les zones en fonction des résultats. Cela fonctionne bien s'il n'y a pas beaucoup de classes raster ou si la taille du polygone n'est pas très grande par rapport à la taille de la cellule.
  2. Transformez le polygone en un raster avec la même taille de cellule et la même origine que le raster d'origine et exécutez une moissonneuse-batteuse. Fonctionne bien s'il y a beaucoup de classes raster, mais uniquement si les polygones d'origine sont en tous points sensiblement supérieurs à la taille de la cellule.

Potentiellement, vous pouvez également prendre la 2ème option et ré-échantillonner le raster d'origine en pixels plus petits si vous craignez une perte de données par la taille et la forme du polygone (assurez-vous de conserver les tailles de cellule comme facteurs des cellules d'origine pour éviter la perte de données).


J'utiliserais une combinaison de l'outil de géotraitement de découpage et de la procédure de cette page : Calcul d'une zone dans un raster.


D'après un commentaire de l'auteur de la question (@Zeinab; qui ne s'est pas connecté à ce site depuis près de quatre ans) sur l'une des autres réponses, il semble que la solution qui a résolu ce problème était la Zone de tabulation (Spatial Analyst) outil qui :

Calcule les surfaces croisées entre deux ensembles de données et génère un tableau.