#1 Mon 16 June 2014 15:46
- amandine.pons
- Participant actif
- Lieu: Rodez
- Date d'inscription: 18 Jan 2011
- Messages: 147
QGIS : Voir si différences entre 2 tables
bonjour,
j ai 2 tables:
- une table crue décennale avant projet
- une table crue décennale après projet
dans les 2 tables j ai les mêmes classes 10 cm-20 cm, 20-30, 30-40, ...
je voudrais isoler les différences c'est à dire voir si amélioration après projet ou le contraire.
est ce possible avec qgis?
merci de vos réponses
Dernière modification par amandine.pons (Mon 16 June 2014 15:46)
Hors ligne
#2 Mon 16 June 2014 21:39
- Benoit91
- Participant assidu
- Date d'inscription: 2 Oct 2008
- Messages: 263
Re: QGIS : Voir si différences entre 2 tables
Bonjour
Est-ce que vos tables ont la même structure ? (même champs)
Et les différences sont-elles seulement attributaires et/ou géométrique ?
Une piste:
Si votre table après projet est issue de votre table avant projet, vous avez un identifiant commun.
Vous pouvez donc faire une jointure de la table avant projet avec celle après projet. Puis vous utilisez les fonctions de sélection pour isoler les différences
(table avt projet) champ1<> Champ1' (table après projet)
Cordialement
Hors ligne
#3 Mon 16 June 2014 22:27
Re: QGIS : Voir si différences entre 2 tables
Bonjour,
Si cela concerne la géométrie, je pense qu'une jointure sur la géométrie est une bonne piste.
Il y a peut être plus simple mais je ferais ainsi:
Dans les 2 tables, création d'une colonne "wkt" qui prendra comme valeur : geomToWKT( $geometry )
Puis une jointure sur ce champs. Tout ce qui n'est pas joint aura été modifié
Hors ligne
#4 Wed 18 June 2014 08:44
- amandine.pons
- Participant actif
- Lieu: Rodez
- Date d'inscription: 18 Jan 2011
- Messages: 147
Re: QGIS : Voir si différences entre 2 tables
bonjour,
en fait je voudrais comparer 2 tables vecteurs avant et après projet (voir cates jointes). ces 2 tables ont les mêmes champs
pour voir au niveau de la géométrie quelles sont les différences
Hors ligne
#5 Wed 18 June 2014 08:47
- amandine.pons
- Participant actif
- Lieu: Rodez
- Date d'inscription: 18 Jan 2011
- Messages: 147
Re: QGIS : Voir si différences entre 2 tables
carte 2
Hors ligne
#6 Wed 18 June 2014 09:13
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: QGIS : Voir si différences entre 2 tables
Salut,
Une solution possible.
Vérifier que dans:
Préférences > Options> Source de données, l'option "Copier la représentation wkt de la géométrie" est cochée.
Puis ouvrir un classeur Excel vide, Copier la totalité des lignes de la table avec un CtrlA depuis la table attributaire de Qgis puis Coller la sélection dans le classeur Excel.
Faire ceci pour les 2 tables ensuite un export en .txt ou .csv de ces 2 classeurs.
Puis comparer les 2 fichiers en .txt ou .csv avec "Tablecompare" --> http://www.nirsoft.net/utils/csv_file_comparison.html
A+
Joël
Hors ligne
#7 Wed 18 June 2014 09:23
Re: QGIS : Voir si différences entre 2 tables
L'IGN propose un logiciel permettant de comparer la même donnée prise à deux dates différentes
http://logiciels.ign.fr/?Presentation,14
geodata au cerema et petits billets en géomatique
Hors ligne
#8 Wed 18 June 2014 10:04
- amandine.pons
- Participant actif
- Lieu: Rodez
- Date d'inscription: 18 Jan 2011
- Messages: 147
Re: QGIS : Voir si différences entre 2 tables
Salut,
Une solution possible.
Vérifier que dans:
Préférences > Options> Source de données, l'option "Copier la représentation wkt de la géométrie" est cochée.
Puis ouvrir un classeur Excel vide, Copier la totalité des lignes de la table avec un CtrlA depuis la table attributaire de Qgis puis Coller la sélection dans le classeur Excel.
Faire ceci pour les 2 tables ensuite un export en .txt ou .csv de ces 2 classeurs.
Puis comparer les 2 fichiers en .txt ou .csv avec "Tablecompare" --> http://www.nirsoft.net/utils/csv_file_comparison.html
A+
Joël
ok mais après on peut pas réimporter sur Qgis?
Hors ligne
#9 Wed 18 June 2014 12:34
- Spacejo
- Membre
- Lieu: Nancy
- Date d'inscription: 17 Aug 2008
- Messages: 2511
Re: QGIS : Voir si différences entre 2 tables
ok mais après on peut pas réimporter sur Qgis?
Aprés avoir fait une sélection de tes points modifiés (selon les indications de tablecompare), réimportation dans Qgis, avec "Ajouter une couche de texte délimité"
A+
Joël
Dernière modification par Spacejo (Wed 18 June 2014 12:35)
Hors ligne
#10 Wed 18 June 2014 13:15
- Titius
- Participant actif
- Date d'inscription: 27 Aug 2013
- Messages: 69
Re: QGIS : Voir si différences entre 2 tables
Bonjour,
Peut être pourriez vous aussi interpoler vos données pour obtenir deux raster que vous n'aurez plus qu'à soustraire.
Il sera toujours possible ensuite de vectoriser le résultat.
Hors ligne
#11 Wed 18 June 2014 13:34
- amandine.pons
- Participant actif
- Lieu: Rodez
- Date d'inscription: 18 Jan 2011
- Messages: 147
Re: QGIS : Voir si différences entre 2 tables
ok mais après on peut pas réimporter sur Qgis?
Aprés avoir fait une sélection de tes points modifiés (selon les indications de tablecompare), réimportation dans Qgis, avec "Ajouter une couche de texte délimité"
A+
Joël
je veux garder mes polygones pour faire des dégadés amélioration dégradation
Hors ligne
#12 Wed 18 June 2014 13:38
- amandine.pons
- Participant actif
- Lieu: Rodez
- Date d'inscription: 18 Jan 2011
- Messages: 147
Re: QGIS : Voir si différences entre 2 tables
Bonjour,
Peut être pourriez vous aussi interpoler vos données pour obtenir deux raster que vous n'aurez plus qu'à soustraire.
Il sera toujours possible ensuite de vectoriser le résultat.
j ai essayé cette méthode
ca marche mais moins précis pour le rendu que je veux faire
Hors ligne
#13 Wed 18 June 2014 15:32
Re: QGIS : Voir si différences entre 2 tables
Sinon on peut passer par spatiallite et faire une requete qui ressemble à cela
CREATE TABLE ce_qui_a_bouger AS SELECT a.* FROM a, b, WHERE a.id = b.id AND a.geom != b.geom
Hors ligne
#14 Wed 18 June 2014 15:37
Re: QGIS : Voir si différences entre 2 tables
Ou encore créer une colonne surface, calculer $area faire la jointure entre les 2 et selectionner surface1 != surface2
Il y a peu de chance que la surface ne bouge pas si le polygone a été modifié
Hors ligne
#15 Wed 18 June 2014 15:46
- amandine.pons
- Participant actif
- Lieu: Rodez
- Date d'inscription: 18 Jan 2011
- Messages: 147
Re: QGIS : Voir si différences entre 2 tables
Ou encore créer une colonne surface, calculer $area faire la jointure entre les 2 et selectionner surface1 != surface2
Il y a peu de chance que la surface ne bouge pas si le polygone a été modifié
je veux avoir une table avec mon résultat final - 10 cm, - 5cm, 0 cm, +5 cm, +10 cm, +20 cm,...
Hors ligne
#16 Wed 18 June 2014 16:04
- Titius
- Participant actif
- Date d'inscription: 27 Aug 2013
- Messages: 69
Re: QGIS : Voir si différences entre 2 tables
Une autre idée alors :
1- faire l'intersection entre les deux couches
2- extraire les centroïdes (Vecteur>Outils de géométrie>Centroïdes de polygones)
3- échantillonner les deux shapefiles initiaux en utilisant l'extension point sampling tool sur la couche de points de centroïdes (en pensant à garder l'identifiant des points)
4- faire la différence entre les deux attributs de hauteur d'eau
5- jointure attributaire entre la couche de polygones d'intersection et la couche de centroïdes
Hors ligne
#17 Wed 18 June 2014 17:24
- amandine.pons
- Participant actif
- Lieu: Rodez
- Date d'inscription: 18 Jan 2011
- Messages: 147
Re: QGIS : Voir si différences entre 2 tables
Une autre idée alors :
1- faire l'intersection entre les deux couches
2- extraire les centroïdes (Vecteur>Outils de géométrie>Centroïdes de polygones)
3- échantillonner les deux shapefiles initiaux en utilisant l'extension point sampling tool sur la couche de points de centroïdes (en pensant à garder l'identifiant des points)
4- faire la différence entre les deux attributs de hauteur d'eau
5- jointure attributaire entre la couche de polygones d'intersection et la couche de centroïdes
merci
mais c'est pas exploitable pour l'étude qu'on veut faire
Hors ligne
#18 Wed 18 June 2014 17:32
- Titius
- Participant actif
- Date d'inscription: 27 Aug 2013
- Messages: 69
Re: QGIS : Voir si différences entre 2 tables
c'est pas exploitable pour l'étude qu'on veut faire
Qu'elles sont les contraintes qui font que cela n'est pas possible?
Hors ligne
#19 Wed 18 June 2014 17:50
- amandine.pons
- Participant actif
- Lieu: Rodez
- Date d'inscription: 18 Jan 2011
- Messages: 147
Re: QGIS : Voir si différences entre 2 tables
c'est pas exploitable pour l'étude qu'on veut faire
Qu'elles sont les contraintes qui font que cela n'est pas possible?
le résultat obtenu n'est pas clair après plusieurs test
le fait de passer par une intersection des couches impose une délimitation qui ne semble pas adéquate
Dernière modification par amandine.pons (Wed 18 June 2014 17:52)
Hors ligne
#20 Wed 18 June 2014 18:16
- SANTANNA
- Moderateur
- Lieu: Angers
- Date d'inscription: 18 Jan 2008
- Messages: 3895
Re: QGIS : Voir si différences entre 2 tables
Bonjour,
Je lis plusieurs échanges depuis tout à l'heure mais aucune réaction par rapport à l'outil proposé par MathieuR qui selon sa description, compare deux fichiers structurés à l'identique. L'avez-vous regardé?
Hors ligne
#21 Thu 19 June 2014 05:02
- Leyan
- Participant assidu
- Date d'inscription: 14 Oct 2013
- Messages: 160
Re: QGIS : Voir si différences entre 2 tables
Je ne suis pas sûr d'avoir compris le problème, mais cela me parait simple:
Dans la boîte à outils, il y a un outil "intersection" qui permet de créer une nouvelle couche avec les polygones définis par les frontières des deux couches. Chaque polygone récupère les attributs des polygones des deux couches qui ont servi à le créer, donc il suffit ensuite de calculer la différence avec la calculatrice de champs. Cette différence peut ensuite servir à regrouper les polygones de même classe avec l'outil dissolve.
Hors ligne
#22 Thu 19 June 2014 08:07
- amandine.pons
- Participant actif
- Lieu: Rodez
- Date d'inscription: 18 Jan 2011
- Messages: 147
Re: QGIS : Voir si différences entre 2 tables
Bonjour,
Je lis plusieurs échanges depuis tout à l'heure mais aucune réaction par rapport à l'outil proposé par MathieuR qui selon sa description, compare deux fichiers structurés à l'identique. L'avez-vous regardé?
j ai regardé mais ça a échoué
je ne sais pas d'où viens le problème...
après le pb c'est qu au final je veux des classes de "différences" donc je ne sais pas si l outil est bien adapté.
Hors ligne
#23 Thu 19 June 2014 08:16
- Titius
- Participant actif
- Date d'inscription: 27 Aug 2013
- Messages: 69
Re: QGIS : Voir si différences entre 2 tables
Bonjour,
Je n'ai toujours pas compris pourquoi l'intersection ne vous convient pas car vous aurez ainsi vos classe de différence.
(proposée aussi par Leyan de manière beaucoup plus simple, je ne sais pas pourquoi je suis parti dans cette histoire de centroïdes)
Pourquoi la délimitation ne vous "semble" pas adéquate et cela veut il dire que le résultat est faux? Et si oui, qu'est ce qui vous indique qu'il est faux?
Hors ligne
#24 Thu 19 June 2014 08:20
- amandine.pons
- Participant actif
- Lieu: Rodez
- Date d'inscription: 18 Jan 2011
- Messages: 147
Re: QGIS : Voir si différences entre 2 tables
Bonjour,
Je n'ai toujours pas compris pourquoi l'intersection ne vous convient pas car vous aurez ainsi vos classe de différence.
(proposée aussi par Leyan de manière beaucoup plus simple, je ne sais pas pourquoi je suis parti dans cette histoire de centroïdes)
Pourquoi la délimitation ne vous "semble" pas adéquate et cela veut il dire que le résultat est faux? Et si oui, qu'est ce qui vous indique qu'il est faux?
je suis en train de regarder l'intersection seulement et ça à l air bon
avec les centroides par moment ca me faisait des erreurs sur certains polygones
Hors ligne