Comment visualiser les valeurs de mesure le long des chaînes de lignes dans QGIS?

12

J'ai une série de géométries LineStringM. La valeur de mesure représente la pente (ou le gradient de flux) à chaque point de la géométrie. J'adore les options de style robustes de QGIS, mais je ne trouve pas de moyen de rendre chaque valeur de mesure le long de mes chaînes de lignes. Idéalement, j'aurais du bleu pour les gradients lents et du rouge pour les gradients très raides.

Pour aider à comprendre ce que j'essaie d'accomplir, supposons que nous ayons utilisé le référencement linéaire pour coder la longueur du LinestringM jusqu'à présent dans la valeur de mesure de chaque point. En haut, vous auriez 1,0 et en bas, vous auriez 0,0. J'ai ajouté une image de ce que j'espère accomplir ci-dessous. J'ai fait cela dans Paint.NET, donc c'est juste une maquette. entrez la description de l'image ici lien direct vers l'image

Comment feriez-vous pour y parvenir dans QGIS?

béquilles
la source
Si votre géométrie est un LineString et non un MultiLineString, je ne vois aucun obstacle pour une classification appropriée en utilisant un champ avec une valeur de pente. Pouvez-vous ajouter plus d'informations - quel est exactement votre problème?
SS_Rebelious
1
Eh bien, c'est une question spécifique à QGIS, dont le titre ne reflète plus. Dans QGIS, comment afficher visuellement les valeurs de mesure (inhérentes à un type LinestringM)? Les attributs sont facilement affichés (par exemple le nom de la géométrie, son ID, etc.). Cependant, A LinestringM est composé de nombreux points et chacun peut avoir une valeur Measure. Je ne vois pas de moyen de coloriser la chaîne de caractères par sa valeur de mesure le long de son chemin.
debout
@standers Puisque vous avez inclus la PostGISbalise, la question n'est pas nécessairement spécifique à QGIS car vous pouvez probablement classer vos valeurs M et les vider dans des pièces de géométrie discrètes directement à partir de PostGIS. Cueillir des lentes, je suppose.
Scro
@Scro merci pour l'avertissement. Je serai plus discriminant dans mes tags. Cela étant dit, mon instance QGIS lit à partir de ma base de données PostGIS, et je suis prêt à effectuer toutes les transformations dans PostGIS qui sont nécessaires pour visualiser mes LinestringMs. J'espère que mes étiquettes ont plus de sens maintenant et je m'excuse pour la confusion.
debout
Pour être clair, je ne critiquais pas les balises (ou pas du tout.) Simplement en soulignant que les balises étaient plus inclusives que le titre, et vous pourriez obtenir des réponses plus / meilleures en n'en faisant pas une question QGIS uniquement.
Scro

Réponses:

9

Une option serait de charger la ligne comme un calque et les sommets de ligne (pourrait être une vue sur la table des lignes) comme un deuxième calque qui peut ensuite être étiqueté. Vous pouvez utiliser ST_M()pour écrire la valeur de mesure dans un attribut de vue.

Côté style, nous devons relever le défi qu'il n'y a pas encore de style de ligne de dégradé ...

Mais il existe des remplissages de dégradés de polygones. Nous pouvons donc tamponner la ligne et styliser les tampons. C'est un peu un exercice de style défini par les données :

entrez la description de l'image ici

obscur
la source
Ceux-ci ne seraient pas interpolés en douceur sur toute l'étendue de la chaîne de lignes - ce seraient des points statiques colorés par un attribut de ST_M (). Parce que j'ai juste besoin d'aide pour visualiser les résultats, cette réponse semble être la meilleure jusqu'à présent. Je pouvais libérer mes compétences internes de Photoshop et trouver une combinaison intéressante de modes de fusion entre la couche LinestringM et la couche Points. Il semble qu'il n'y ait pas de moyen immédiat d'utiliser les valeurs de mesure pour effectuer quelque chose de similaire à cette image de gradients de flux dans QGIS (pour l'instant).
debout
@underdark Curieux de savoir si QGIS a déjà implémenté le style de dégradé de ligne que vous attendiez dans votre article de blog: anitagraser.com/2015/01/11/a-line-gradient-style-hack Je ne trouve rien à ce sujet.
Jon
@Jon Jusqu'à présent, il n'a pas été implémenté mais il devrait y avoir des solutions plus faciles en utilisant des générateurs de géométrie
underdark