今回は Arcade を利用した地図表現のテクニックを紹介します。
スマート マッピングと Arcade
スマート マッピングは、ArcGIS Pro や ArcGIS Online のマップ ビューアー等で利用できる主題図作成機能です。ユーザーが時間をかけて調整する必要があったシンボルの大きさや、色、表示縮尺、分類の閾値などの設定作業を自動化します。ユーザーの主題図作成コスト軽減と表現力向上を同時に実現する便利な機能です。筆者の感覚としては、「主題図作成の設定作業の 80 % の面倒な部分をスマート マッピングがやってくれて、残りの 20 % の微調整だけ自分でやればよくなった」というような感覚が持てる機能です。
一方 Arcade は、ArcGIS Pro や ArcGIS Online のマップ ビューアー、およびその他のアプリケーションで横断的に利用できる ArcGIS 独自の軽量スクリプト言語です。スマート マッピングと連携させて利用できますが、相性が抜群に良く、作成できる主題図の内容、種類、表現力が広がると同時に作業時間や工数の軽減効果が出ます。
図 1 は、Arcade とスマート マッピングを組み合わせ作成した主題図です。バス停の属性データとして保持していない名古屋駅までの距離を Arcade で動的に計算して、スマート マッピングに入力データとして渡して主題図を生成しています。
図 1 Arcade とスマート マッピングの連携により作成される動的な主題図
このように Arcade を利用することで、スマート マッピングに入力データとして渡す「属性データ」を動的に加工して渡すことが可能になるため、以下のようなメリットが生まれます。
- 主題図作成のためだけに、あらかじめフィールド演算をして、属性データを準備する作業が不要になる
- 一定の規則性がある属性データに対しては、系統的、機械的に主題図を作成できる
- 現在の時刻や日付などを基準とした、動的な条件式から生成される属性データに基づいた主題図を作成できる
系統的な属性データの可視化
ここでは、属性データに一定の規則性があるデータを「系統的な」と表現します。図 2 は、埼玉県の市区町村を色分けした主題図です。この地図は、「市区町村名」という属性データに関する「どの市区町村名も区、市、町、または村という文字で終わる」という規則性に着目して作られています。図 3 の手順で規則性を利用したデータ加工を Arcade で行い、スマート マッピングに入力データとして渡すことで主題図を作成しています。
図 2 系統的な属性データを Arcade で加工して作成した主題図の例
図 3 Arcade による条件式の作成手順
業務系のシステムでは、名称以外に系統的なデータとして ID やコードを扱う場合があります。実用的に設計されたコードは桁ごとに値に意味が付けられています。その場合には、図 3 で紹介した Right 関数と同類の Left 関数や Mid 関数等を利用することで特定桁のコード値を抽出して利用できます。Excel の関数の利用経験がある方にはなじみがあると思いますが、同じような形式の関数となっており、Excel と同じ要領で条件式を作成できます。
業務目的を意識したコードを設計し運用できれば、業務に役立つ地図を Arcade とスマート マッピングを組合せて効率的に生み出せるということを意味するかと思います。
さいごに
ArcGIS Arcade は最新バージョンが 1.12 となっています。初期バージョンリリース以降、継続的に機能強化が図られています。当初実装されていなかった Geometry 関数が用意され、図 1 に示すような特定地点からの各フィーチャの距離を動的に計算してスマート マッピングに渡すことも可能となりました。今後の Arcade とスマート マッピングの機能強化により、より豊かなマッピングの実現が期待できると思います。
■関連リンク