#1 Fri 05 September 2014 10:43
- Fanny_83
- Juste Inscrit !
- Date d'inscription: 5 Aug 2014
- Messages: 5
QGIS : Liaison entre 2 shapefiles
Bonjour,
J'aimerai lier 2 couches shp. mais je n'y parviens pas.
Les deux couches n'avaient aucune variable en commun
- la première est un ensemble de points représentant des individus (avec beaucoup de données supplémentaires : activité, classe d'âge...)
- la deuxième est une couche de quadrats (il y a donc seulement une colonne avec les numéros de quadrats dans la table d'attributs).
J'ai créé une colonne "forme" dans les 2 tables d'attributs afin qu'elles aient une variable en commun. Dans la couche de point, j'ai mis "point" dans chacune des lignes de cette colonne. Dans la couche des quadrats, j'ai mis "polygone".
Après j'ai essayé toutes sortes de choses pour essayer de lier ces couches, faire une jonction... je n'y parviens pas!
Mon but est de les joindre pour ensuite faire des analyses pour avoir la quantité de points par quadrats par exemple et donc pouvoir comparer différentes cartes.
Merci d'avance pour votre aide !!
Fanny
Hors ligne
#2 Fri 05 September 2014 11:39
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3895
Re: QGIS : Liaison entre 2 shapefiles
Bonjour,
Il existe deux types de jointure:
- la jointure attributaire qui requiert que les deux couches aient un champ en commun qui puisse permettre de relier les lignes de part et d'autre. Dans les deux tables, des valeurs de ce champ doivent être identiques. Mettre point d'un côté et polygone de l'autre ne permet donc pas de créer une telle liaison. Ce champ est souvent un code d'identification (unique) de chaque entité (pour faire court)
- la seconde jointure est dite spatiale car permet de relier les entités selon leur localisation, superposition. Point besoin d'avoir des champs identiques entre les couches. Et c'est qu'il faut dans le contexte actuel. Ça se passe dans menu Vecteur > Outils de gestion de données > Joindre les attributs par localisation. Je n'ai pas QGIS sous la main mais faites en sorte d'obtenir une couche de points qui va récupérer pour chaque point de la table point, les attributs du polygone en dessous. Ceci vous permet de pouvoir faire les traitements statistiques que vous souhaiteriez mais aussi, par une jointure attributaire (accessible dans les propriétés de la couche), de relier ces données à la couche de quadrant.
Ps: il existe aussi les relations 1-n dans Qgis comme type de jointure mais bon, on laisse ça de côté pour l'instant
Ps2: dans le menu vecteur, il y a aussi un outil genre "compter le nombre de points dans un polygone"
Hors ligne
#3 Sat 06 September 2014 18:32
- Fanny_83
- Juste Inscrit !
- Date d'inscription: 5 Aug 2014
- Messages: 5
Re: QGIS : Liaison entre 2 shapefiles
Bonjour,
Merci beaucoup pour votre réponse, mais j'ai encore quelques petits problèmes ..
J'ai essayé de faire une jonction spatiale.
Dans un 1er temps, j'ai mis ma couche de points dans "indiquez une couche vecteur", et ma couche de quadrats dans "joindre la couche vecteur". Dans la nouvelle couche shp obtenue, j'ai fais une jointure attributaire (à partir des propriétés de la couche) en reliant les données de la couche quadrats. J'obtiens alors une couche où seuls les points sont représentés sur la carte, même si mes polygones de quadrats sont dans la table attributaire.
J'ai donc essayé l'inverse (en indiquant la couche de quadrats dans la 1ere case puis la couche de points dans la 2e, puis en faisant une jointure pour relier les données de la couche de points). Cette fois j'obtiens une couche avec seulement les quadrats qui apparaissent sur la carte, même si les points sont dans la table attributaire ..
Même si tout n'apparait sur la carte, la jointure a-t-elle fonctionné ? Parce que du coup, j'ai essayé de faire des statistiques (pour connaître le nombre de points par quadrats, le % de quadrats avec tant de points .. je ne sais pas ce qui est possible en réalité!), mais je n'y arrive pas!
J'ai donc essayé ce que vous m'expliquez dans le ps2, et là ça a tout de suite fonctionné, j'arrive à représenter grâce à un style gradué, le nombre de points par quadrats, ou le nombre précis de points. Par contre il n'y a pas de statistiques possibles j'imagine, seulement des nombres précis ou des catégories, c'est bien ça ?
Dernière modification par Fanny_83 (Sat 06 September 2014 18:33)
Hors ligne
#4 Tue 09 September 2014 04:06
- Leyan
- Participant assidu
- Date d'inscription: 14 Oct 2013
- Messages: 160
Re: QGIS : Liaison entre 2 shapefiles
Même si tout n'apparait sur la carte, la jointure a-t-elle fonctionné ? Parce que du coup, j'ai essayé de faire des statistiques (pour connaître le nombre de points par quadrats, le % de quadrats avec tant de points .. je ne sais pas ce qui est possible en réalité!), mais je n'y arrive pas!
Oui, c'est le fonctionnement normal: il y a une couche source et une couche destination, la jointure va conserver la couche destination et lui attribuer des attributs de la couche source en fonction de la position des éléments. Du coup, laquelle mettre en source et laquelle mettre en destination dépend du résultat voulu.
Ces deux outils ne font pas vraiment de statistiques, c'est juste un moyen de récupérer une information brute ("combien de points dans chaque polygone?", "à quel polygone appartient ce point?"). Pour faire des statistiques et analysis ensuite, il faut le faire soi même, dans QGis si c'est très simple (quel est le polygone avec le plus de points?) ou en exportant la table d'attributs pour faire des choses plus complexes, il suffit de la copier-coller dans un tableur.
Hors ligne