目的
活用事例 : QGISで路線地図を都道府県ごとを作りたいけど、47回設定+Exportするのはちょう面倒ですね。
この記事は複数地図の自動作成 (一回で!)方法を説明します。
参考 (英語)
http://www.qgistutorials.com/en/docs/3/automating_map_creation.html
英語は上手の場合上記の記事は充分です。
ただし、コードの書きかたが違うかもしれません。
手順
路線データを都道府県ごとにMappingしたい
都道府県dataと鉄道dataを使います
###環境
QGIS 3.4.2 Madeira (LTR) Mac版 (英語)
1- Data Import / Styling
- 必須DataをImportする
- 地図をきれいにStylingする

※ 都道府県Polygon data向けのLayer は prefectures
です
2- Page Layout
- いつもでLayout Manager画面を開いて
Layout Manager画面の表示方法
MenuのこのボタンでもOK →
- 共通Layoutを設定する
- Page size : 四角
- Map
- Scale
- Title : 都道府県名
- など

このママで画像やPDFでExportしてもいいけど、47回をするのは大変になります。
これから一回で地図47枚の作成方法を説明します
3- Atlas設定 (日本語: 地図帳の設定)
Layout Manager画面の右側に下記の画像みたいに設定する
- 1- Atlasタブ(日本語: 地図帳)にClick
- 2- Generate an Atlas (地図帳を作成する)をチェック
- 3- 対象Layerは
prefectures
layer - 4- ページュ名を都道府県名向けのフィールドに設定
- 5- 順番を都道府県コード向けのフィールドに設定
4- 地図をAtlasに繋がる
Layout Manager画面の右側に下記の画像みたいに:
5- AtlasのPreview
Layout Manager画面の上にPreview Atlasをクリックする
下記の画像を見たら矢印ボタンで都道府県Controlできます
Titleはまだ
栃木県
と書いてありますのでこれからAtlasに合わせましょう
6- 地図のTitleをAtlasに合わせる
下記の画像に順番で手順してください
〇〇県
ではなく@atlas_pagename
で都道府県データで設定できる
7- Export準備: 共通ファイル名を設定
下記の画像に順番で手順してください
ファイル名の設定は → @atlas_featurenumber ||'_路線図_'|| @atlas_pagename
結果は(例) → 18_路線図_福井県
8- Export
画像でExportボタンではなく、今回layout manager画面に、Atlas Menuで全画像をExport できます。
Export Atlas as Images
もうしくは Export Atlas as PDF
- 届けフォルダーを選択後、ファイルが大きくないように、
150dpi
を意識でExportする

9-少々お待ちください

10- 47都道府県地図をできました
課題
東京都島嶼部
東京都島嶼部で東京都(内陸部)を見えない
解決: 手動で内陸部をExportするか東京都内陸部のみのPolygonを作成する
都道府県の広さでScaleが合わない
Bonus: 対象都道府県ポリゴンのみを表示する場合
Single Symbolの場合
-
prefecture
layerのPropertiesにSymbologyをRuled-Based
に設定する


- 備考 : ExpressionでRuleを楽に設定できる

Categorizedの場合
例え地方によると色を分けるにしたら、Valueにカラム名じゃなくて SQL コードを記入
↓の事例で対象カラムは region
CASE WHEN pref_name = @atlas_pagename THEN "region" END
Graduatedの場合
例え数字によるとグラデーションするにしたら、同じくValueにカラム名じゃなくて SQL コードを記入
↓の事例で対象カラムは population
CASE WHEN pref_name = @atlas_pagename THEN "populatio" END
最後に
私たちの会社、ナイトレイでは一緒に事業を盛り上げてくれるエンジニアメンバーを募集しています!
このような方は是非Wantedlyからお気軽にご連絡ください(もしくはこちらまで recruit@nightley.jp )
✔︎ 自社Webサービスの開発で事業の発展に携わってみたい
✔︎ 自分が開発したものが顧客にどのように使われているのか知りたい(顧客の声を聞いてみたい)
✔︎ セールスチームなど、他部署のメンバーとコミュニケーションが取れる環境に興味がある
✔︎ 地理や地図が好きで仕事中も眺めていたい
一つでも当てはまる方は是非こちらの記事をご覧ください
「受託開発一切なし!自社WEBサービスを社長やセールスチームと一緒に開発!」
▼ナイトレイとは?