Dans ArcMap, il est possible de calculer automatiquement les valeurs uniques d'un raster, puis d'appliquer un style différent à chaque valeur unique (voir la 1ère image).
Cependant, dans QGIS, je dois ajouter manuellement des valeurs de style lors de l'utilisation du style "Pseudocolor Singleband" (voir 2ème image). Existe-t-il un moyen de remplir automatiquement les valeurs uniques comme le fait ArcMap?
ArcMap:
QGIS (comment remplir automatiquement la liste de valeurs avec des valeurs uniques?):
qgis
raster
symbology
unique-value
Peet Whittaker
la source
la source
Réponses:
Pour ceux qui recherchent toujours cela. Des valeurs raster uniques ont été ajoutées à QGIS 3. "Ajouté par Nyall Dawson il y a environ 1 an passé
[FONCTION] Autoriser la classification du rendu palettisé à l'aide de valeurs uniques à partir d'une couche raster
Ajoute un moyen simple de styliser des rasters discrets tels que des classes d'utilisation du sol à l'aide du rendu à palette. Sélectionnez simplement le rendu à palette, choisissez une bande, puis appuyez sur le bouton "Ajouter des valeurs uniques". Les valeurs de pixels uniques seront extraites du calque et une couleur attribuée à chacun en utilisant la rampe de couleurs actuellement sélectionnée. "
la source
Voici une approche qui pourrait être utile. L'outil GRASS
r.report
est capable de calculer une statistique de base pour chaque valeur unique dans une couche raster:La sortie peut être écrite comme un simple fichier txt ressemblant à ceci (gauche: valeurs uniques, droite: zone couverte par chaque valeur):
Le script de géotraitement suivant prend ce fichier texte en entrée et configure un rendu approprié (avec des couleurs aléatoires pour plus de commodité) pour la couche raster (Inspiré par LAWHEAD, J .: QGIS Python Programming Cookbook, p. 135):
Grâce aux capacités de traitement légendaires de QGIS, vous pouvez les assembler dans le modeleur graphique et ajouter un paramètre raster afin de choisir simplement une couche raster chargée:
Après avoir enregistré le modèle, en double-cliquant dessus dans la boîte à outils de traitement, il peut être utilisé comme un outil normal:
Avec un résultat ressemblant à ceci (affleurement d'un jeu de données natura2000 rasterisé):
Ou dans les propriétés du calque:
Je pense que cela nécessite un certain raffinement dans l'expérience utilisateur, mais c'est une première étape.
la source