banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

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 …

Faire un don 

Retrouver nos membres bienfaiteurs

#1 Tue 04 December 2018 19:20

phg007
Juste Inscrit !
Date d'inscription: 22 Dec 2008
Messages: 8

QGIS: labels extremite de lignes

Bonsoir,

Est-il possible de positionner un label correspondant à une valeur d'un champ à l'origine d'une ligne et une autre valeur d'un autre champ à l’extrémité de cette même ligne
merci d'avance

Hors ligne

 

#2 Tue 04 December 2018 19:31

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3948

Re: QGIS: labels extremite de lignes

Bonjour,
Par défaut, je ne pense pas. Mais on peut extraire les points de début et de fin de la ligne (voir l'algorithme "Extraire sommets spécifiques") et étiqueter ceux-ci avec chacun des champs tout en rendant les points invisibles.

Hors ligne

 

#3 Tue 04 December 2018 20:13

phg007
Juste Inscrit !
Date d'inscription: 22 Dec 2008
Messages: 8

Re: QGIS: labels extremite de lignes

merci pour ce retour
mais l'idée serait d'afficher ou ne pas afficher simultanément mes labels d'extremité et mes lignes

Hors ligne

 

#4 Wed 05 December 2018 09:37

SIGEAL
Participant assidu
Lieu: Saint Laurent des Combes
Date d'inscription: 5 Sep 2005
Messages: 195
Site web

Re: QGIS: labels extremite de lignes

Bonjour,

On peut positionner une étiquette à l'origine des polylignes en utilisant les paramètres de position liés aux données, avec les expressions :
- x(start_point($geometry)) pour la coordonnée x
- y(start_point($geometry)) pour la coordonnée y

Pour afficher un autre champ à l'extrémité des polylignes, il faudra dupliquer la couche et utiliser les expressions :
- x(end_point($geometry)) pour la coordonnée x
- y(end_point($geometry)) pour la coordonnée y

Pour gérer simultanément l'affichage des deux couches, on peut utiliser un groupe (clic droit -> grouper la sélection)


Christophe Damour (SIGéal)

Hors ligne

 

#5 Wed 05 December 2018 10:01

phg007
Juste Inscrit !
Date d'inscription: 22 Dec 2008
Messages: 8

Re: QGIS: labels extremite de lignes

Bonjour et merci

c'est exactement ce que je recherchais

merci encore

Hors ligne

 

#6 Wed 28 October 2020 12:01

aheurion
Participant actif
Lieu: NANTES
Date d'inscription: 8 Oct 2020
Messages: 143

Re: QGIS: labels extremite de lignes

Bonjour,
Je up le sujet pour demander une précision :
Savez-vous comment je peux faire pour que l'étiquette soit bien à l'extrémité de la ligne mais sans la dépasser ? C'est à dire au-dessus de la ligne comme une étiquette normale mais près de l'extrémité :
     120                                                                  114
     ------------------------------------------------------------------------
Pour info j'ai un champ dans lequel j'ai déjà enregistré l'azimut des premier et dernier segment de cette polyligne donc je peux rentrer une expression dans rotation pour que l'étiquette soit parallèle au moins.

Merci d'avance ! [version: 3.10]

[EDIT] :
Après moules bidouilles j'ai trouvé une solution pour ceux qui rechercheraient la même chose :
Pour le noeud amont: x(end_point(line_substring($geometry, 0,@map_scale/100))) (idem avec y)
Pour le noeud aval: x(end_point(line_substring(reverse($geometry),0,@map_scale/100)))
Et dans la rotation j'ai mis:
Pour le noeud amont: degree(azimuth(point_n($geometry, 2),start_point($geometry)))+90
Pour le noeud aval: degree(azimuth(point_n($geometry, - 2),end_point($geometry)))+90

En gros je crée une ligne "virtuelle" avec line_substring qui part du start_point et qui suit ma polyligne sur une distance qui dépend de mon échelle de zoom (avec la variable @map_scale) et je prends le x et le y du end_point de cette ligne. Pour l'extrémité aval j'utilise la fonction reverse qui change la direction de ma polyligne dans l'expression.
Pour l'azimut c'est la fonction azimuth entre le start_point (ou le end_point) et le deuxième (ou avant dernier) point de la polyligne. Il faut juste rajouter 90 degrés pour que l'étiquette soit dans le bon sens je sais pas trop pourquoi

Dernière modification par aheurion (Wed 28 October 2020 14:59)

Hors ligne

 

#7 Wed 28 October 2020 14:32

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3948

Re: QGIS: labels extremite de lignes

Bonjour,
Merci aheurion pour le suivi.
Une autre piste potentielle: installer la 3.16 qui propose https://qgis.org/fr/site/forusers/visua … e-features

Hors ligne

 

#8 Wed 28 October 2020 15:01

aheurion
Participant actif
Lieu: NANTES
Date d'inscription: 8 Oct 2020
Messages: 143

Re: QGIS: labels extremite de lignes

Ah oui ça a l'air pratique en effet, ça marche pour des placements différenciés pour plusieurs étiquettes? (dans une même couche avoir une étiquette au centre, une au début et une à la fin par exemple)
[EDIT] : si je passe sous 3.16 et que je teste je vous tiens au courant

Dernière modification par aheurion (Wed 28 October 2020 15:52)

Hors ligne

 

#9 Wed 28 October 2020 15:32

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3948

Re: QGIS: labels extremite de lignes

Je ne sais pas du tout mais je ne crois pas. L'interface laisse penser que c'est un truc au choix. Mais j'avoue que je suis à la ramasse sur le test des nouveautés de la 3.16 donc s'il advenait que vous testiez et trouviez plus d'infos, n'hésitez pas à partager.

Hors ligne

 

#10 Fri 06 November 2020 10:59

aheurion
Participant actif
Lieu: NANTES
Date d'inscription: 8 Oct 2020
Messages: 143

Re: QGIS: labels extremite de lignes

Bonjour,

Sur la 3.16 il est bien possible de modifier chaque étiquette de façon différenciée (dans une même couche) puisqu'il s'agit d'une option supplémentaire pour l'emplacement de l'étiquette.

Bien à vous !

Hors ligne

 

Pied de page des forums

Powered by FluxBB