「データで定義された」ラベルの移動について

740 views
Skip to first unread message

熊沢

unread,
Jul 14, 2021, 10:46:51 PM7/14/21
to QGIS初心者質問グループ
お世話になります。

ラベルの表示についてですが、いつもX,Y座標をフィールドに追加して
「データで定義された」を設定して、ラベル位置を動かし調整しています。
プロジェクトとレイヤの座標系も揃えています。

最近(3.16にしてから?)、なぜか画面のスクロールに従って勝手に移動したり、
逆にラベル移動ツールで移動させようとしても動かせなかったりします。
これでは「データで定義された」を設定した意味が全くありません。
何か対処法などありましたら、ご教授いただけると幸いです。

QGIS 3.16.7
OS:Windows10


福岡

unread,
Jul 15, 2021, 2:19:06 AM7/15/21
to QGIS初心者質問グループ
熊沢 様

こんにちは

QGIS3.16での動作を確認してみましたが、私の環境では問題ありませんでした。
念のための確認ですが、「データによる定義」でX座標とY座標のフィールドを指定なさっているのですね?
指定している場合は、アイコンの色が黄色になっていると思います。

fig_1.png
2021年7月15日木曜日 11:46:51 UTC+9 熊沢:

熊沢

unread,
Jul 15, 2021, 3:03:00 AM7/15/21
to QGIS初心者質問グループ
福岡様

早速のご返信ありがとうございます。
黄色くなっています。何度も確認しました。
これまで何年もこの方法で固定できたのですが…。

x,y座標ではなくidフィールドを作って、「補助テーブル:プライマリキーを選択」する方法でも
やってみましたが同じでした。
症状?としては、マップ画面を手のひらツールなどで動かすと、勝手に移動します。
可視部分に移動している感じです。
マップ上のみならまだしも、レイアウトマネージャ上でもマップの通りに移動してしまいます。
最終的に印刷物として提出するので、配置したものが勝手に動かれてしまうと困ってしまうのです。

2021年7月15日木曜日 15:19:06 UTC+9 福岡:

福岡

unread,
Jul 15, 2021, 3:46:33 AM7/15/21
to QGIS初心者質問グループ
熊沢 様

ご返信ありがとうございます。

うーん、手強いトラブルのような印象です。
同じようなトラブルが発生していないかを探してみます。

何か見つけましたら報告いたしますので、よろしくお願いいたします。m(__)m

2021年7月15日木曜日 16:03:00 UTC+9 熊沢:

tomoyuki arai

unread,
Jul 15, 2021, 1:04:27 PM7/15/21
to QGIS初心者質問グループ
熊沢 様

こんにちは。

ラベルの自動配置エンジンが3.10以降で変更されており、
3.12以降で新規作成したプロジェクトはそれ以前と配置エンジンの
デフォルトが異なるため、問題のような事態が起こっているのかもしれません。

ベクタレイヤプロパティ - ラベルタブ の右上×印のすぐ下にある、
ギアと十字矢印を組み合わせたアイコンのボタン「自動配置設定(全レイヤに適用)」を
押すと表示される、自動配置エンジンダイアログのラベルバージョンを
Version 1にすれば、以前のような使用感になるかもしれません。

また、同じダイアログの「候補を表示(デバッグ用)」のチェックボックスにチェックを入れれば、
起こりうるラベル配置位置を確認できます。
データ定義で位置指定されているならば、位置候補は1つだけのはずです。

念のため、ラベルツールバーの「ラベル・ダイアグラムの強調」ボタンを押して
オンの状態で各ラベルを確認してみてください。
背景が青色で表示されているのはデータ定義で位置指定されたものですが、
そうでない透明背景のラベルは自動配置エンジンによってラベルが移動する可能性があります。

もう一つ落とし穴があるとすれば、ベクタレイヤプロパティ - ラベル - レンダリングタブの
「このレイヤのすべてのラベルを表示」にチェックが入っていないでしょうか?
これにチェックが入っていると、ラベルをすべて表示するため、データ定義の位置は無視して
ラベルが表示される位置に強制移動します。

以上、ヒントになればよいですが。。。

新井 智之

2021年7月15日木曜日 16:46:33 UTC+9 福岡:

熊沢

unread,
Jul 15, 2021, 11:49:26 PM7/15/21
to QGIS初心者質問グループ
福岡様

後述の通り、おかげさまで今回は何とかなりました。
真っ先にお気に留めていただいて、本当にありがとうございました。


新井 智之様

ご助言どうもありがとうございます。
色々ととても参考になりました。

試したこと結果です。
・Version 1に変える→特に変わらず(x、yを再設定し忘れたからかも?)
・背景は全部青色になっていました。
・「このレイヤのすべてのラベルを表示」にチェックしていました。
でもこれを外してしまうと、表示させたいラベルがことごとく消えてしまうのでした。

しかし、結果的に挙げていただいたヒントを参考にして、得たい結果を得ることができました。
以下、今回やった手順です。

レイヤスタイルの「配置」タブで「データによる定義」でX,Y座標を設定した上で、
1. 属性フィールドにラベルの表示非表示を指示するフィールド(型:整数値、長さ:10、半角数字で1を入力)を追加
2. レイヤスタイルの「レンダリング」タブ→「このレイヤのすべてのラベルを表示」のチェックオフ
3. すぐ下の「データによる定義」→「常に表示するか否かを示す式」で1で作ったフィールドを指定

で、位置を自由に移動&固定することが出来ました。
とりあえず、今回はこれで何とかなりそうです。
本当にありがとうございました。



2021年7月16日金曜日 2:04:27 UTC+9 tarai...@gmail.com:
Reply all
Reply to author
Forward
0 new messages