地物の近くに属性情報等を表示できるラベル機能。
最も一般的なラベルの設定方法では地物の近くにその属性情報が一つ表示されますが、任意の文字列や複数の属性情報を併記するように設定することもできます。
しかし、文字数が多い場合には横に非常に長く表示されてしまい、見づらくなる場合があります。
そのような場合に、今回紹介する方法を利用すると、ラベルの途中で改行することができます。
国土数値情報の「郵便局」データというポイントデータを使用して説明を行います。
ラベルの設定画面の開き方 レイヤパネルでラベルを表示するレイヤの右クリックメニューから「プロパティ」を選択します。 「レイヤプロパティ」ウインドウが表示されるので左側に並んでいる文字列から「ラベル」を選択しラベルの設定画面を開きます。 上部の選択メニューを「なし」から「単一定義」に変更すると、ラベル表示に係る設定項目が表示されます。 詳しくはこちらをご確認ください。
ラベルの条件式の入力方法
今回紹介する方法は、ラベルの表示内容を条件式で入力します。
条件式の入力欄は次のように開きます。
ラベルの設定画面を開き上部の「値」欄右側にある「ε」マークをクリックします。
すると「式ダイアログ」ウインドウが表示されます。
このウインドウの左側にある入力欄に条件式を入力してラベルに表示する内容を指定します。
ラベルの途中で改行する
条件式で「||」の間に「’\n’」を挟むとラベル内で改行できます。
改行せずに複数の属性情報を併記する場合の条件式は以下のようになります。
"フィールド名" || "フィールド名"
複数の属性情報を改行し、縦に並べて表示場合の条件式は以下のようになります。
フィールド名の間に「’\n’」を入力するだけではなく、「||」を間に挟む必要があります。
"フィールド名" || '\\n' || "フィールド名"
今回のデータの場合、「P30_005」フィールドの上に公共施設小分類コードが記録されている「P30_003」という文字列を表示したい場合は以下のような条件式を記載します。
"P30_003" || '\\n' || "P30_005"
条件式の入力が完了したら、ウインドウの下にある「OK」をクリックしレイヤプロパティにもどり、「OK」をクリックすると地図に反映されます。
すると以下のように郵便局名の上に18001や18003などの分類コードが付加されました。
複数行になるときの見た目の調整
初期設定ではラベルの位置に合わせて自動で左寄せになったり右寄りになったり中央寄せになったり変わります。
統一する場合は次のように設定します。
ラベルの設定画面左側のメニューから「フォーマット」を選択し、ラベルのフォーマット関連の設定欄を開きます。
中段にある「複数行」欄の「整列」の選択メニューで整列の向きを左や中央などに指定できます。
中央寄せに設定すると以下のようになります。
改行位置を属性情報に記載する
属性情報の特定文字列の位置で改行するように設定できます。
属性情報を作成する際に特定の記号などを入力することで、意図した場所でラベルを改行することが可能になります。
ラベルの設定画面左側のメニューから「フォーマット」を選択し、中段にある「複数行」欄の「この文字でラップ処理」欄に改行したい文字列を入力します。
説明のため新たなフィールドを作成し、郵便局名の前に「東京都(改行位置)」という文字列を入力した属性情報を作成しました。
通常通りこのフィールドをラベルに表示すると以下のように属性情報である郵便局名の前に「東京都(改行位置)」という文字列が表示されます。
しかし「この文字でラップ処理」欄に「(改行位置)」と入力するとラベルは「(改行位置)」の位置で改行されます。
「(改行位置)」という文字列は改行位置の判断にのみ使用され、ラベルに表示されません。
「OK」をクリックし地図に反映すると「(改行位置)」の位置でラベルが改行されています。
使用したデータ
- 国土数値情報「郵便局」
- OpenStreetMap