Power BI で地理的解析（基礎編）




# 概要

PowerBIにおまけでついている、地図描画ですが、徐々に使えるものになってきています。
都道府県など定番の描画処理から凝ったポリゴンの地図まで、最短コースで可視化できるのがPowerBIでの地図ヴィジュアルの優位性です。
皆さんも手近なデータで試して、押し出しの効くレポートを作ってみましょう。
基礎的なヴィジュアルから応用まで、以下のようにまとめてみました：

[Power BI で地理的解析（基礎編）](https://qiita.com/Masutani/items/d91361db4d59d6721d09)
[Power BI で地理的解析（応用編１）](https://qiita.com/Masutani/items/34cad3287fba9ba44ff4)
[Power BI で地理的解析（応用編２）](https://qiita.com/Masutani/items/513ed61afbf0f316c936)

## こんな人はPowerBIをどうぞ
[Power BI](https://powerbi.microsoft.com/ja-jp/)を使うと様々な分析が非常に容易に行えます。Excelを使っていて、表計算シート上で散乱するグラフに嫌気がさしたり、数万行の表を全選択するときの独特の緊張感にストレスを感じている集計、分析をする人は気軽な気持ちでPowerBIを使うと良いと思います。きっと、データ分析が今までよりも好きになります。

元々Excelの拡張機能として登場したPowerQueryが発展してスタンドアロンアプリケーションになったもので、多くの機能、スタイルを継承していますが、全くアプローチが違うソフトウェアになっており、別物と考えて導入されると良いと思います。

## PowerBIの地図機能
さて、Power BIの基本的な利用方法は本家MSの[リッチなチュートリアル](https://powerbi.microsoft.com/ja-jp/documentation/powerbi-desktop-getting-started/)で十分と思いますが、昨今IoTやロケーションベースサービスなどで、見直されている地理情報に関わるデータ分析においては、PowerBIの地図プロット機能はそれを強力にサポートします。基本的にはMicrosoftの地図サービスであるBing mapを利用するようになっているようです。

ただし、専門のGIS（地理情報システム）のような高度な機能は期待してはいけません。あくまで分析結果を地図上に配置し、より直感的な分析を促すための可視化オプションの一つとして考えてください。

Power BIの地図機能は多角的であり、デフォルトの機能だけでも複数の表示方法があります。

* マップ
* 塗り分け地図
* マップのシェイプ（プレビュー）
* ArcGIS Maps for PowerBI（プレビュー）

それぞれ視覚化オプションとして用意されていますので、一度可視化したデータに対して、必要に応じて切り替えることができます。

# １．マップ
マップでは地名の書かれたレコードを持つデータに対してマッピングを直接利用できます。また、緯度経度を直接指定することも可能です。具体的な方法は、[本家](https://powerbi.microsoft.com/ja-jp/documentation/powerbi-service-tips-and-tricks-for-power-bi-map-visualizations/)に詳しいですが、簡単に説明をします。
指定方法にはいくつか方法があります。

* 地理的場所の用語の使用
* コンマを使用した地理的フィールドへのコンテキストの追加
* 特定の緯度と経度の使用

地図表示同様、ジオコーディング機能をBingから導入しているようで、[その仕様](https://msdn.microsoft.com/ja-jp/library/dn384099.aspx)に準拠するようです。すなわち都道府県、市町村、郵便番号などのデータから地図上への対応レコードのマッピングが可能になります。

上記でうまくいかない場合は直接緯度、経度を使用すればどんな場所でもデータを表示させることはできます。


ここでは一例として、簡単なマッピングを試してみましょう。データはM.Higashideさんが公開されている[都道府県別データ](http://uub.jp/)を利用させていただきました。中でも面白そうな[交通マナー](http://uub.jp/pdr/t/manners.html)に関するデータを例題に使ってみました。

データをExcelに読み込んで、PowerBIで少し調整するとフィールドが右側ペインのように得られます。
ここから地図を表示させる最も簡単な方法は、「都道府県」フィールドをレポートエディタ上にドラッグアンドドロップするだけです。
その時の見栄えは、以下のようになりますが、自動的にマップビジュアルが選択され、すでに都道府県ごとのシンボル（丸）が表示された状態までできあがります。
![powerbimap.PNG](https://qiita-image-store.s3.amazonaws.com/0/146939/294d818a-9b01-c754-a514-33ebd79e94de.png)

後は例えばシンボルの色の彩度にフィールド（ここでは全体的な交通マナー）をあてはめたり、他のビジュアルと組み合わせたりして、連携し、分析を加えていくことができます。ここでは、都道府県ごとのマナー内訳（＋－で表されたものなので積み上げするとおかしなものになりますが）、「合図なし車線変更」（X軸）と、「無理な割り込み」（Y軸）の相関を見るための散布図などを並べてみました。マップで赤い色の県、散布図で左下の象限にある都道府県の方（私含め）少々気まずいですが、ご了承ください（汗）

![powerbimap2.PNG](https://qiita-image-store.s3.amazonaws.com/0/146939/d27b4745-f8b6-96b6-5d47-a3320030cd24.png)

当然ながらマップで都道府県を選ぶと他のグラフでも連動して、フォーカスが当たります。

# ２．塗り分け地図

標準で搭載されている地図ビジュアルに、塗り分け地図があります。コロプレスマップとも呼ばれますが、地理上の位置や面積比などに対して、より直感的な把握ができるように対象物をポリゴンで表現してその色などでデータを表示しようというものです。こちらも本家に[ビデオ付きのわかりやすい解説](https://powerbi.microsoft.com/ja-jp/documentation/powerbi-service-tutorial-filled-maps-choropleths/)があります。

先ほどのインスタントに作ったマップから、塗り分け地図にするには、マップを選択した状態で、ビジュアルを塗り分け地図に変更するだけです。

![powerbimap3.PNG](https://qiita-image-store.s3.amazonaws.com/0/146939/f9fa5100-5e6f-2615-55b0-bbfd0e95f799.png)

よく見ると境界が海を走っていたりしますが、海上の島などをカバーし、かつ、ポリゴンのエッジ数を抑えるためにこうなっているのでしょう。（エッジが増えると地図描画が極端に重くなります）

# まとめ

基本的には、フィールドに都道府県や、市区町村など住所を表すものがあれば、ほぼ何の変換をする必要もなくマッピングが可能です。これまで、難しそう、重そう、紙面が足りないなどで諦めていたシーンでも、ドラッグアンドドロップでマッピングできるなら、やってみようと言う気にもなって来ますね。
次回は、応用編としてカスタムマップや最近プレビューとして加わったESRI社のArcGISを使ったマッピングを解説します。


[Power BI で地理的解析（基礎編）](https://qiita.com/Masutani/items/d91361db4d59d6721d09)
[Power BI で地理的解析（応用編１）](https://qiita.com/Masutani/items/34cad3287fba9ba44ff4)
[Power BI で地理的解析（応用編２）](https://qiita.com/Masutani/items/513ed61afbf0f316c936)