QGISでラインストリングに沿って測定値を視覚化する方法は?


12

一連のLineStringMジオメトリがあります。メジャー値は、ジオメトリの各ポイントでの勾配(または河川勾配)を表します。QGISの堅牢なスタイル設定オプションは気に入っていますが、ラインストリングに沿って各メジャー値をレンダリングする方法が見つかりません。理想的には、緩やかなグラデーションには青、非常に急なグラデーションには赤が必要です。

私が達成しようとしていることを理解しやすくするために、LinestringMの長さをこれまでの各ポイントのメジャー値にエンコードするために線形参照を使用したと仮定します。上部に1.0があり、下部に0.0があります。以下に達成したい画像を追加しました。これはPaint.NETで作成したので、単なるモックアップです。 ここに画像の説明を入力してください 画像への直接リンク

QGISでこれをどのように達成しますか?


ジオメトリがMultiStringではなくLineStringである場合、勾配値を持つフィールドを使用した適切な分類に障害はありません。さらに情報を追加できますか?問題は何ですか?
SS_Rebelious

1
さて、これはQGIS固有の質問で、タイトルには反映されていません。QGISでは、メジャー値(LinestringMタイプに固有)を視覚的に表示するにはどうすればよいですか?属性は簡単に表示されます(たとえば、ジオメトリの名前、IDなど)。ただし、LinestringMは多くのポイントで構成されており、各ポイントには測定値があります。パスに沿ったメジャー値によってラインストリングを色付けする方法がわかりません。
スタンダー

@standers PostGISタグを含めたので、おそらくM値を分類し、PostGISから個別のジオメトリピースにダンプできるため、質問は必ずしもQGISに固有のものではありません。ニッチを選ぶ、と思います。
Scro

@Scroに感謝します。私は自分のタグをより差別化します。そうは言っても、私のQGISインスタンスはPostGIS DBから読み込んでおり、LinestringMを視覚化するために必要なPostGISの変換を行う準備ができています。私のタグがもっと意味のあるものになることを願っています。混乱をおかけして申し訳ございません。
スタンダー

明確にするために、私はタグに批判的ではありませんでした(またはまったく)。タグはタイトルよりも包括的であり、QGISのみの質問にしないことでより良い/より良い答えが得られることを指摘しただけです。
-Scro

回答:


9

1つのオプションは、ラインを1つのレイヤーとしてロードし、ラインの頂点(ラインテーブル上のビュー)を2番目のレイヤーとしてロードしてから、ラベルを付けることです。を使用ST_M()して、メジャー値をビュー属性に書き込むことができます。

スタイル的には、グラデーションラインスタイルがまだないという課題に対処する必要があります...

ただし、多角形のグラデーション塗りつぶしがあります。そのため、行をバッファし、バッファのスタイルを設定できます。ただし、データ定義のスタイリングについては少し練習します

ここに画像の説明を入力してください


これらは、ラインストリングの全範囲にわたってスムーズに補間されません-それらは、ST_M()からの属性によって色付けされた静的ポイントになります。結果を視覚化するのに助けが必要なだけなので、この答えはこれまでのところ最高のようです。フォトショップの内部スキルを解き放ち、LinestringMレイヤーとPointsレイヤーの興味深いブレンドモードの組み合わせを見つけることができました。Measure値を使用して、QGIS のストリームグラデーションのこの画像に似た何かを実行する方法はまだないようです(まだ)。
スタンダー

@underdark好奇心が強いQGISがブログ投稿で期待したライングラデーションスタイルを実装したことがある場合:anitagraser.com/2015/01/11/a-line-gradient-style-hackそれについては何も見つかりません。
ジョン

@ジョンこれまでのところ、それが実装されていませんが、ジオメトリ・ジェネレータを使用して簡単に回避策があるはず
アンダーダーク
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.