17.5. Plus d’algorithmes et types de données

Note

Dans cette leçon, nous lancerons trois algorithmes supplémentaires, apprendrons à utiliser d’autres types d’entrées, et configurerons des sorties pour qu’elles soient sauvegardées dans un dossier donné automatiquement.

Pour cette leçon, nous aurons besoin d’une table et d’une couche de polygones. Nous allons créer une couche de points basée sur des coordonnées dans la table, et ensuite compter le nombre de points dans chaque polygone. Si vous ouvrez le projet QGIS correspondant à cette leçon, vous trouverez une table avec des coordonnées X et Y, mais vous ne trouverez pas de couche de polygones. Ne vous inquiétez pas, nous la créerons en utilisant un géoalgorithme de traitement.

La première chose que nous allons faire est de créer une couche de points à partir des coordonnées de la table, en utilisant l’algorithme Convertir la table en points. Vous savez maintenant comment utiliser le champ de recherche, et il ne devrait donc pas être trop difficile pour vous de le trouver. Double-cliquez dessus pour le lancer et accéder à la boîte de dialogue suivante.

Cet algorithme, comme celui de la leçon précédente, génère qu’une seule sortie, et a trois entrées :

  • Table: la table avec les coordonnées. Vous devrez sélectionner ici la table à partir des données de la leçon.

  • Les champs X et Y: ces deux paramètres sont liés au premier. Le sélecteur correspondant montrera le nom de ces champs qui sont disponibles dans la table sélectionnée. Sélectionnez le champ XCOORD pour le paramètre X, et le champ YYCOORD pour le paramètre Y.

  • SCR : Comme cet algorithme ne prend pas de couche en entrée, il ne peut donc pas assigner un SCR à la couche de sortie. À la place, il vous est demandé de sélectionner manuellement le SCR que les coordonnées dans la table utilisent. Cliquez sur le bouton sur le côté gauche pour ouvrir le sélecteur du SCR de QGIS, et sélectionnez EPSG:4326 comme SCR de sortie. Nous utilisons ce SCR car les coordonnées dans la table sont dans ce SCR.

Votre boîte de dialogue devrait ressembler à cela.

../../../_images/points_from_table.png

Cliquez maintenant sur le bouton Exécuter pour obtenir la couche suivante (vous aurez peut être besoin de faire un zoom arrière pour revenir sur les points nouvellement créés de la carte) :

../../../_images/points.png

La prochaine chose dont nous avons besoin est la couche de polygone. Nous allons créer une grille régulière de polygones en utilisant l’algorithme Créer une grille, qui a les paramètres suivants dans la boîte de dialogue.

../../../_images/graticule_dialog.png

Avertissement

Les options sont plus simples dans les versions récentes de QGIS; vous devez juste rentrer les valeurs min et max pour X et Y (suggestion de valeurs: -5.696226,-5.695122,40.24742,40.248171)

Les entrées requises pour créer une grille sont toutes des nombres. Lorsque vous devez entrer une valeur numérique, vous avez deux options : la taper directement dans le champ correspondant, ou cliquer sur le bouton sur le côté droit pour obtenir une boîte de dialogue comme celle montrée après.

../../../_images/number_dialog.png

La boîte de dialogue contient une simple calculatrice, donc vous pouvez taper des expressions telles que 11 * 34.7 + 4.6, et le résultat sera calculé et inséré dans le champ de texte correspondant dans la boîte de dialogue des paramètres. En outre, elle contient des constantes que vous pouvez utiliser, et des valeurs d’autres couches disponibles.

Dans ce cas, nous voulons créer une grille qui couvre l’étendue de la couche de points d’entrée, de manière à pouvoir utiliser les coordonnées pour calculer la coordonnée du centre de la grille ainsi que sa largeur et sa hauteur, puisque ce sont les paramètres que l’algorithme prend pour créer la grille. Avec un peu de mathématiques, essayez de faire ça par vous-même en utilisant la boîte de dialogue et les constantes de la couche de point d’entrée.

Sélectionnez Rectangles (polygones) dans le champ Type.

Comme dans le cas du dernier algorithme, nous devons entrer le SCR ici. Sélectionnez EPSG:4326 comme le SCR cible, comme nous l’avons fait avant.

À la fin, vous devriez avoir une boîte de dialogue de paramètres comme ceci :

../../../_images/graticule_parameters.png

(Il est plus sage d’ajouter un espacement sur la largeur et la hauteur: Espacement horizontal: 0.0001, Espacement vertical: 0.0001, Largeur: 0.001004, Hauteur: 0.000651, X Centre: -5.695674, Y Centre: 40.2477955). Le cas du centre X est un peu compliqué: -5.696126+(( -5.695222+ 5.696126)/2)

Cliquez sur Exécuter et vous obtiendrez la couche du graticule.

../../../_images/graticule.png

La dernière étape consiste à compter les points dans chacun des rectangles de ce graticule. Nous utiliserons l’algorithme Compter les points dans les polygones.

../../../_images/count_points.png

Nous avons maintenant le résultat que nous cherchions.

Avant de terminer cette leçon, voici un rapide astuce pour vous simplifier la vie dans le cas où vous voulez sauvegarder vos données de manière persistante. Si vous voulez sauvegarder tous vos fichiers de sortie dans un dossier donnée, vous n’avez pas besoin de taper le nom du dossier à chaque fois. À la place, rendez-vous dans le menu de traitement et sélectionnez l’élément Options et configuration. Cela va ouvrir la boîte de dialogue de configuration.

../../../_images/config.png

Dans l’entrée Dossier de sortie que vous trouverez dans le groupe Général, tapez le chemin de votre dossier de destination.

../../../_images/output_folder.png

Désormais, quand vous lancez un algorithme, utilisez seulement le nom du fichier à la place de tout le chemin. Par exemple, avec la configuration montrée ci-dessous, si vous entrez graticule.shp comme chemin de sortie pour l’algorithme que nous venons d’utiliser, le résultat sera sauvegardé dans D:\processing_output\graticule.shp. Vous pouvez toujours entrer un chemin entier au cas où vous voulez sauvegarder un résultat dans un dossier différent.

Essayez vous-même l’algorithme Créer une grille avec différentes tailles de grille, et aussi avec différents types de grille.