Extraire la valeur raster en attribut de polygone

31

J'ai des données raster pour un état qui a des données d'élévation dans ses pixels. J'ai également la couche Vector qui comprend les 300 divisions d'État. ce dont j'ai besoin, c'est d'obtenir la valeur d'élévation moyenne d'une division particulière à partir des données raster à l'aide d'ArcGIS.

J'ai essayé d'extraire par masque dans ArcGIS pour extraire un polygone individuel pour découper le raster en 300 raster puis à partir du raster individuel j'ai collecté l'altitude moyenne, mais il a fallu des jours ensemble pour terminer le travail. existe-t-il un autre moyen facile de l'obtenir.

Mahesh
la source
Si vous avez une nouvelle question, veuillez la poser en cliquant sur le bouton Poser une question . Incluez un lien vers cette question si cela permet de fournir un contexte.
Chris W
Merci beaucoup. Ça a marché pour moi. Depuis longtemps, j'essayais de faire des statistiques zonales. Ça fonctionnait maintenant. Merci encore une fois
DEVANG

Réponses:

28

Il y a plusieurs moyens de le faire. Si vous n'avez pas Spatial Analyst, vous pouvez quand même le faire comme suit:

  • Tout d'abord, convertissez le raster en points à l'aide de l' Raster to Pointoutil. Cela vous donne une grille de points et est relativement rapide - 16 millions de points ont été créés en environ 2 minutes (assurez-vous de désactiver le rendu pour qu'ils ne soient pas affichés ;-)).

  • Maintenant, utilisez l' outil Outils d'analyse -> Superposition - Jointure spatiale . L'entité cible est votre couche de 300 polygones, la jointure est la couche de points. Partez en tête-à-tête. Créez une "carte de champ des fonctions de jointure" - en étant sûr de définir la règle de fusion comme "moyenne", "médiane" ou "mode" (ou toutes je suppose). La couche de polygone unique résultante devrait avoir les 300 zones de polygone, chacune ayant des attributs avec les types de moyenne demandés calculés en eux.

Cela devrait vous permettre d'obtenir les chiffres dont vous avez besoin avec un minimum d'effort (mais en attendant un peu de traitement - les jointures spatiales sont lentes).

SIG-Jonathan
la source
3
Très bon conseil, en évitant l'extension Spatial Analyst. Juste, c'est vraiment lent pour les grands rasters.
nadya
21

C'est la tâche de l' outil Statistiques zonales . Accédez à Outils Spatial Analyst> Zonal> Statistiques zonales et sélectionnez la statistique Moyenne. Le raster doit avoir une table attributaire pour cela.

Nadya
la source
2
Remarque: Cela nécessite l'extension Spatial Analyst.
GIS-Jonathan
3
(+1) Autre remarque: le traitement recommandé ici par nadya ne prendra que quelques secondes (ou des fractions de celles-ci), pas des minutes. Le principe en jeu est que lorsque vous analysez des données raster, l'utilisation de procédures raster (qui nécessite bien sûr un logiciel raster comme SA) a tendance à être beaucoup plus efficace (dans son utilisation de votre temps, du temps de l'ordinateur et de la RAM de l'ordinateur) que convertir des rasters au format vectoriel et utiliser des procédures vectorielles.
whuber
I Hearty Merci "NADYA" Cela fonctionne mais les résultats d'altitude changent de 10m à 100m si je compare cela avec mon résultat de raster clipé séparé (j'ai essayé d'extraire par masque dans ArcGIS pour extraire un polygone individuel pour couper le raster en 300 raster puis d'individu raster j'ai collecté l'élévation moyenne mais il a fallu des jours ensemble pour terminer le travail. y a-t-il un autre moyen facile de l'obtenir.)
Mahesh
Je faisais cette même tâche, mais le tableau récapitulatif zonal de sortie ne contient pas toutes les fonctionnalités du fichier de formes des zones. Comment est-ce possible? Le raster couvre chaque entité de zone unique et j'ai également sélectionné ignorer les valeurs nulles lors de l'exécution de l'outil.
Salman
3
Hmm, lorsque je fais cela à l'aide de l'outil Statistiques zonales, il crée un nouveau raster et n'ajoute pas le maximum (ou la moyenne, mais je recherche des valeurs maximales) à la table attributaire de la couche de couche vectorielle. J'ai dû utiliser l'outil Statistiques zonales comme table, puis effectuer une jointure spatiale entre la table résultante et la couche vectorielle d'origine.
traggatmot
3

Vous pouvez utiliser les outils de l' environnement de modélisation géospatiale (outils indépendants) qui étaient auparavant des outils Hawths . De là, vous pouvez extraire les valeurs raster de l'étendue des polygones avec les statistiques que vous souhaitez. Vous pouvez également extraire des variables thématiques avec sa fraction. le résultat sera automatiquement ajouté à votre fichier de formes. Cet outil fonctionne avec ArcGIS et R.

Utilisez spécifiquement l' outil isectpolyrst pour placer les informations raster sous-jacentes dans des fichiers de formes de polygones. Il n'a aucun problème avec les polygones qui se chevauchent non plus.

Nandika
la source
0

Étape 1: Entité vers point (Gestion des données) Étape 2: Extraire plusieurs valeurs en points (Spatial Analyst)

Pieterjan
la source
3
Ajouter un peu de contexte à votre réponse est utile! Veuillez faire le tour de la communauté et voir notre page d'aide! gis.stackexchange.com/help
MaryBeth
0

vous pouvez utiliser ces étapes: 1.Vector à raster (vos polygones) 2. Utilisez des exemples d'analyses spatiales pour extraire la valeur raster en tant que fichier de table (votre fichier raster et la sortie de "l'étape 1". 3. Utilisez "Join Filed" pour ajouter le résultat du tableau au polygone Attribut Bonne chance

Vahid Nasiri
la source