ローカルのファイルで Power BI のマップにポリゴンやラインを表現しよう

はじめに

皆様は、Microsoft Power BI (以下、Power BI) にマップのビジュアルを追加できるアドイン「ArcGIS for Power BI」をご存じでしょうか。ArcGIS for Power BI は、ArcGIS Online または ArcGIS Enterprise 上のレイヤーの読み込みや可視化、空間解析など多くの機能をサポートしており、Power BI 上でのデータの可視化や分析を強力に支援します。

ArcGIS for Power BI では、Power BI に接続した位置情報を持つデータを描画できますが、経緯度や住所情報を持たないラインやポリゴンに関しては、ArcGIS Online や ArcGIS Enterprise 上のレイヤーを参照レイヤーとして追加するのが手軽で一般的です。ただし、そのような場合はラインやポリゴンの属性情報をグラフで直接可視化することはできず、PowerBI 上で関連するデータとリレーションを構築しグラフ化する必要があります。

そこで有効なのが、ローカルの EsriJSON ファイルを使用して、ラインやポリゴンをデータ レイヤーとして追加する方法です。いくつかの設定を行って、ラインやポリゴンをデータ レイヤーとして追加することで、その属性情報を基に Power BI レポート内のグラフやリストで可視化し、Power BI でのデータ分析の幅をさらに広げることができます。

本ブログでは ArcGIS Pro で作成した EsriJSON ファイルを使用し、ArcGIS for Power BI で可視化する方法についてご紹介いたします。ArcGIS for Power BI を活用して、さらに効果的にデータを可視化しましょう。

ArcGIS Pro は ArcGIS Online または ArcGIS Enterprise の Creator 以上のユーザー タイプ ライセンスでご利用いただけます。

ArcGIS Pro で EsriJSON ファイルをエクスポート

ArcGIS Pro のジオプロセシング ツールを利用し、データを EsriJSON ファイルとしてエクスポートします。

  1. ArcGIS Pro を開き、変換したいでデータをマップにレイヤーとして挿入追加し、マップ上で確認します。詳細は ArcGIS Pro 逆引きガイド「2-3. マップにデータを追加したい」をご参照ください。
  2. [解析] タブ の [ツール] をクリックします。
  1. [ツールボックス] タブで [変換ツール] → [JSON] をクリックして展開し、[フィーチャ → JSON] ツールをクリックします。
  1. [入力フィーチャ] にマップに追加したレイヤーを指定し、[出力 JSON] で出力先とファイル名を指定して、[実行] をクリックします。
  1. 作成した EsriJSON ファイルをメモ帳などのテキスト エディターで開き、「wkid」「latestWkid」の値を控えておきます。

wkid、latestWkid は、GIS で使用される座標参照系または空間参照系を識別するための一意の番号です。詳細は GIS 用語集をご参照ください。

Power BI の操作

Power BI にデータを接続

作成した EsriJSON ファイルを Power BI に接続追加します。

  1. Power BI でプロジェクトを開き、[ホーム] タブの [データを取得] をクリックします。
  1. [JSON] をクリックして選択し、[接続] をクリックします。
  1. 参照画面が表示されるため、作成した EsriJSON ファイルを開き、Power Query エディターで操作を開始します。

Power Query エディターでデータを加工

ArcGIS for Power BI で可視化するために、Power BI のPower Query エディターでデータを加工します。

  1. 表示されたテーブルの右端までスクロールし、[features] 列を見つけます。
  2. オプションを展開し、[新しい行に展開する] をクリックします。
  1. 再度 [features] 列のオプションを展開し、[元の列名をプレフィックスとして使用します] をオフにして、[OK] をクリックします。
  1. 右側に表示された [attributes] 列のオプションを展開し、[元の列名をプレフィックスとして使用します] をオフにして [OK] をクリックします。
  1. 上部の [列の追加] タブ → [カスタム列] をクリックし、カスタム列ウィンドウを開きます。
  1. 新しい列名を「shape」とし、カスタム列の式に以下の式を入力します。
Text.Replace(Text.FromBinary(Json.FromValue([geometry])), "]]]" ,"]]], ""spatialReference"":{""wkid"":##任意の値##,""latestWkid"":##任意の値##}")
  1. 「##任意の値##」をあらかじめ控えておいた wkid、latestWkid の値に置き換えます。
  2. [構文エラーが検出されませんでした。] というメッセージが表示されたことを確認し、[OK] をクリックします。
画像では JGD2011 の wkid、latestWkid を入力しています。
  1. 上部の [ホーム] タブ → [閉じて適用] をクリックし、Power Query ウィンドウを閉じます。

ArcGIS for Power BI でデータを可視化

ArcGIS for Power BI を Power BI のレポートに追加し、データを可視化します。

  1. [視覚化] → [ビジュアルのビルド] ウィンドウで [ArcGIS for Power BI] アイコンをクリックします。
  1. [サイン イン] ダイアログが表示された場合は、ArcGIS Online または ArcGIS Enterprise のアカウントでログインします。
  2. [ビジュアルのビルド] タブの [位置情報] フィールドに [Shape] を追加すると、マップ上にレイヤーが表示されます。

レイヤーが表示されない場合はレポートを保存し、再度開き直すことで解決できる場合があります。

EsriJSON ファイルを使用してポリゴンをデータ レイヤーとして追加できました。ポリゴンの属性情報を基にグラフやリストを描画でき、ArcGIS for Power BI のレポートをさらに充実させることができます。

まとめ

本ブログでは、ArcGIS for Power BI で EsriJSON ファイルを使用してデータを可視化する方法についてご紹介しました。ローカルのファイルをデータ ソースとして参照することで、ラインやポリゴンでもグラフを描画できるようになります。また、ネットワーク環境に左右されずにレイヤーを効率的に描画できる場合もあります。ぜひお試しください!

フォローする