Comment utiliser la PyQGIS pour visualiser la table attributaire d’une couche vecteur? C’est ce que nous allons voir dans cet article.

Comme pour tous les cours, les données utilisées sont téléchargeables via ce lien.

Ouvrir Qgis, créer un nouveau projet et le sauvegarder.

Ouvrir la couche vecteur « COMMUNE » contenue dans le dossier « BD_Topo_Administratif ».

Ouvrir la console Python et son éditeur de texte et saisir les lignes de code suivantes:

  • coucheActive=iface.activeLayer()
  • iface.showAttributeTable(coucheActive)

Explication du code:

  • coucheActive: une variable créée pour stocker la couche active (celle sélectionnée dans le panneau « Couches ») et pour la créer on utilise « iface.activeLayer()« :
    • iface: un objet créé à partir de la classe « QgisInterface » et qui permet d’accéder aux outils et à l’interface de Qgis.
    • activeLayer: c’est une fonction de l’objet « iface » qui donne comme résultat la couche active au moment de l’exécution du code.
    • showAttributeTable: une fonction de l’objet « iface » permettant l’affichage de la table attributaire d’une couche.

Il y a aussi possibilité de ne pas utiliser les variables et saisir directement:

  • iface.showAttributeTable(iface.activeLayer())

Ou bien ouvrir une couche et afficher sa table attributaire dans une seule ligne de code:

  • iface.showAttributeTable(iface.addVectorLayer(« D:/logiciels/qgis/data/BD_Topo_Administratif/COMMUNE.shp », »communes », »ogr »))

Il faut remplacer « D:/logiciels/qgis/data/BD_Topo_Administratif/COMMUNE.shp », »communes » par le chemin vers l’emplacement de la couche « COMMUNE » sur votre ordinateur et utiliser « / » au lieu de « \ ».

Conclusion:

On peut utiliser plusieurs fonctions dans une même ligne de code mais ce n’est pas une méthode de travail efficace. Dans un script assez long, les variables sont un moyen efficace pour s’organiser et éviter les tâches répétitives.

Les bibliothèques sont assez vastes et contiennent pas mal de classes et fonctions.

Il ne faut pas chercher à toutes les connaître car ça se fait au fur et à mesure.

A chaque fois que vous voulez utiliser une fonction, il suffit de la chercher (dans le guide de Qgis ou les forums par exemple) pour l’exploiter. C’est pour cette raison qu’il faut toujours pratiquer.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *