Annonce
Pour sa 21ème année, l’association GeoRezo a toujours besoin de vous !
10€ = 1 mois de frais bancaires ; 15€ = 12 mois de nom de domaine ; 30€ = 1 semaine de location des serveurs …
Retrouver nos membres bienfaiteurs
Pages: 1
- Sujet précédent - QGIS : Récupérer les bornes des classes d'une analyse thématique - Sujet suivant
#1 Mon 25 November 2013 09:00
- Christine1215
- Juste Inscrit !
- Date d'inscription: 3 Jun 2008
- Messages: 5
QGIS : Récupérer les bornes des classes d'une analyse thématique
Bonjour,
J'ai fait une analyse thématique par classes de valeurs sur Qgis. J'aimerais récupérer les bornes des classes, pour pouvoir ensuite créer un champ classe dans ma table attributaire : ça me permettrait de savoir automatiquement, pour chaque individu, à quelle classe il appartient.
Est-ce que c'est possible ? Ou bien je dois construire le champ manuellement ?
Merci d'avance !
Christine
Hors ligne
#2 Mon 25 November 2013 13:58
- Fincalan
- Juste Inscrit !
- Date d'inscription: 25 Sep 2013
- Messages: 8
Re: QGIS : Récupérer les bornes des classes d'une analyse thématique
Bonjour,
je ne sais pas si un plugin existe pour faire ce que vous demandez.
Mais, s'il n'y a pas beaucoup de classes différentes (4 ou 5), l'utilisation de la calculatrice de champ après sélection des entités appartenant à une classe (requête suivant les bornes de valeurs souhaitées) est un moyen assez rapide d'obtenir le résultat.
Hors ligne
#3 Mon 25 November 2013 17:31
- Cornet Jérémie
- Participant assidu
- Lieu: Nouméa
- Date d'inscription: 6 Apr 2008
- Messages: 229
Re: QGIS : Récupérer les bornes des classes d'une analyse thématique
En étant familier du python dans Qgis, c'est faisable sans trop de soucis.
je vous donne le départ : comment récupérer les classes dans la console python.
Code:
layer = iface.mapCanvas().currentLayer() renderer = layer.rendererV2() ranges = renderer.ranges()
ranges contient alors une liste des classes (QgsRendererRangeV2)
Pour chacune des classes, vous pouvez accéder :
- au label avec la méthode label()
- à la borne inférieure avec lowerValue()
- à la borne supérieure avec upperValue()
Il ne reste "plus" qu'à mettre à jour une colonne de la couche avec ce label (ou le numéro de classe) en bouclant sur une couche et en comparant les valeurs du champs avec les bornes des classes.
NB : je n'ai mis aucun contrôle dans le bout de code donc il faut que la couche sélectionnée soit bien une couche vectorielle avec une symbologie graduée.
Dernière modification par Cornet Jérémie (Mon 25 November 2013 17:33)
Hors ligne
Pages: 1
- Sujet précédent - QGIS : Récupérer les bornes des classes d'une analyse thématique - Sujet suivant