QGISで上り坂の向きと位置をもつ等高線に標高番号を配置しますか?


20

標高ラベルを上り坂にしたい。

それは可能ですか?

現在、QGISのラベリングツールを使用しています(レイヤー設定のラベリングツールではありません)。ラベルをカーブさせて上り坂にしたいです(そして、数字がどのように定期的に表示されるかを定義したいと思います)。すべて印刷マップ用です。


chat.stackexchange.com/rooms/939/gisを参照してください。答えではない、私は怖い。ニック。
nhopton

QGISのみを使用することを厳格にしていますか?他のソフトウェアを使用してラベリング用のデータを準備することを検討しましたか?
アレックスマルコフ

オープンで無料であれば他のソフトウェアも使用します:)
MAP

回答:


21

次に、等高線ラベルの配置を制御する方法について説明します。図を参照してください。

私が最初にしたことは、輪郭をロードすることでした。次に、新しいラインシェープファイルで、丘の上部から下部に線を引きました(図のラベルはこれに揃えられています)。次に、ラインをバッファリングし、バッファを使用して輪郭レイヤーをクリップしました。その後、クリップされた輪郭を輪郭レイヤーにロードし、小さな線がレンダリングされないようにシンボルを設定し、新しいラベリングシステムを使用してクリップされたレイヤーにラベルを付けました。

示されている例では、直線を1本しか使用していませんが、ポリラインを使用してラベルの配置を改善することもできます。

ああ、必要なのは50メートルの小さなバッファー値だけです。この例で使用したと思いますが、これは厳密に必要な値よりも大きい場合があります。

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


創造的な方法。私はこのアイデアを将来の地図のために借りるかもしれません。
スーデフォレスト

2
いいね、とてもいい考えだ、ニック!しかし、何百もの丘と山のある1000km²の地域で行うのは大変な作業のように思えます... :)
MAP

1
ちょっと汚いハックだと思いませんか?:)
blah238

1
うん!しかし、それは私の本の賛辞です:)はい、それはマーティンのかなりの量の仕事になるでしょう、しかし私が思う点についてラベルをシフトするより速いです。同じレイヤーでバッファリングするためにたくさんの線を描くことができ、前に述べたように、直線である必要はありません。しかし、それらを横断するのは良い考えではないと思います。ニック。
nhopton

このメソッドと仮想レイヤーを組み合わせることで、線に沿ってラベルを設定する方法をインタラクティブに提供できます。
アレクサンドル・ネト

4

「蛇腹線」と「線の向きに依存する位置」と並行配置を使用して、ラベルを常に上り坂側に配置することができました。

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

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

曲線配置は現在、ラインの方向を無視しているようです。(動作を報告しました。)

また、あなたがそれを目指していた場合、逆さまのラベルを達成することは不可能と思われます。


向き、ラベルが上下逆になっている場合でも、輪郭に対する「上り坂」の位置を知る方法です。
マイクT

1
ありがとう!しかし、うまく機能していません。方向は、1700mや1900mのような上り坂ではなく、左側の丘の等高線番号ではなく、ライン角度に合わせられています。しかし、ありがとう!
MAP

@MikeToews私はそれを知っていますが、現在、逆さまのラベルを作成することは現時点では不可能と思われます(答えで述べたように)。
暗闇

「ルール」という言葉は強すぎますが、ラインのラベル付けには慣習があり、新しいラベル付けシステムはこれらを尊重する良い仕事をしています。ラベルを表示する行の場所を選択する場合は、行を適切なセクションに分割する必要があると思います。ニック。
nhopton

等高線ラベルの配置を処理する別の方法があるかもしれません。これについて考えさせてください。
nhopton

4

できることは、標高の属性を持つ等高線からポイントファイルを作成することです(ラインツールのプロファイルを使用してこれを行うことができます)。次に、ポイントにアスペクト値を追加します(アスペクトラスターが必要ですが、簡単に作成できます)。最後に、アスペクトに従って標高ラベルを回転させます(実際には、アスペクトは180度+アスペクトである必要があります。ある下り方向)。ポイントが表示されないようにスタイルを設定できます。これが役立つことを願っています。データの詳細に強く依存します。アスペクトが輪郭の方向と一致しない場合、非常に迷惑になります。


1
(+1)巧妙なアプローチ-そして、多くのGISで動作するのに十分なほど一般的であり、非常に柔軟です。(残念ながら、このソリューションは曲線を輪郭でラベル付けするという要件には対応していません。)このサイトへようこそ!
whuber

1

多くの場合、等高線の頂点は、上り坂が常にラインの同じ側にあるようにキャプチャされます。たぶんそれはあなたのデータの場合です...


それはQGIS Contourプラグインの場合のようです。しかし、それでもラベルをどのように扱うかという問題が残ります。
暗闇

0

私は、質問者が輪郭の上り坂側に配置するのではなく、上り坂に面した輪郭ラベルを望んでいると仮定しています。

QGIS 3.2では、に行きます

  • レイヤー->プロパティ...、
  • タブのラベル付け
  • サブタブのレンダリング

[ 逆さまのラベルを表示=常に]を選択します。これがないと、QGISはラベルを逆さまに印刷することを拒否し、向きが混在することになります。

ラベルの位置がすべて間違っている場合は、Processing ToolboxからReverse line directionツールを使用できます。

これは、レイヤー内のすべての輪郭が同じ方向を向いていることを前提としていることに注意してください。これは、QGISのContourツール(gdal_contourを呼び出す)が使用されている場合に当てはまります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.