PowerBIレポートで画像上に領域を区切ってデータを表示する方法
この記事の内容
- Power BI で任意の画像(地図・座席表など)に領域を設定し、データを視覚化する方法を紹介します
- 「Synoptic Panel for Microsoft Power BI」というカスタムビジュアルを使用します
- Synoptic Designer で画像に領域を定義し、SVG ファイルとしてエクスポートする手順を解説します
- Excel データと連携してデータラベルや色の塗り分けを設定する方法を説明します
- 色の濃淡(サチュレート)や状態(ステート)による色分けなど、表示のカスタマイズ方法を紹介します
Synoptic Panel とは
Power BI では通常のグラフやマップビジュアル以外に、任意の画像上に領域を定義してデータを表示することができます。これを実現するのが「Synoptic Panel for Microsoft Power BI」というカスタムビジュアルです。
地図・フロアマップ・座席表・建物の見取り図など、あらゆる画像をベースにデータを可視化できるため、表現の幅が大きく広がります。
事前準備:Synoptic Designer で画像に領域を定義する
画像を用意する
まず、領域を定義したい画像を用意します。今回は著作権フリーの白地図(関東地方)を PNG 形式でダウンロードして使用します。
Synoptic Designer を開く
Synoptic Panel には専用のデザイナーツール(Synoptic Designer)が用意されています。ブラウザからデザイナーを開くと、画像をドロップするエリアが表示されます。
- 用意した画像をドラッグ&ドロップでアップロードします
Ctrlキーを押しながらマウスホイールを操作して、表示サイズを調整します
領域を定義する
領域の定義方法は 自動 と 手動 の2種類があります。
自動検出(Auto-magically Discover Bitmap Areas) 黒い輪郭線で区切られた領域を自動的に検出してくれます。例えば「東京」をクリックすると、その都道府県の形を自動認識して領域が作成されます。
手動描画(Draw New Area) 「Draw New Areas」を選択し、クリックして頂点を打ちながら手動で領域を描くこともできます。
今回は自動検出で関東の各都県(東京・神奈川・千葉・茨城・栃木・埼玉・群馬)を選択します。選択後、各領域に対して 表示名(ディスプレイネーム) を設定します。漢字でも入力可能です。
不要な領域はゴミ箱アイコンで削除できます。
SVG ファイルとしてエクスポートする
領域の設定が完了したら、「Export to BI」ボタンをクリックします。生成された画像を右クリックし「名前を付けて画像を保存」で SVG 形式として保存します。
Power BI Desktop での設定手順
カスタムビジュアルを追加する
Power BI Desktop を開き、Synoptic Panel をビジュアルとして追加します。
- ビジュアルペイン右上の「…」(その他のオプション)をクリック
- 「その他のビジュアルの取得」を選択
- 検索ボックスに「synoptic」と入力
- 「Synoptic Panel for Microsoft Power BI」を選択して「追加」をクリック
- インポートが成功したらビジュアルペインに新しいアイコンが追加されます
データを準備する
データは Excel で作成します。今回は都道府県名と数値を持つシンプルなテーブルを用意します。
| Prefecture | Value |
|---|---|
| 東京 | 700 |
| 千葉 | 500 |
| 茨城 | 100 |
| 栃木 | 23 |
| 埼玉 | 10 |
| 群馬 | 24 |
Excel でテーブルとして定義してから保存します。
Power BI Desktop で「データを取得」→「Excel ブック」から、作成した Excel ファイルを読み込みます。使用するテーブルを選択してデータをインポートします。
Synoptic Panel にデータをマッピングする
キャンバスに Synoptic Panel ビジュアルを配置し、以下の手順でデータと画像を紐付けます。
- ビジュアルを選択した状態で、「ローカル」から先ほど保存した SVG ファイルを読み込みます
- SVG に定義した領域名と Excel のデータが自動的にマッチングされ、数値が表示されます
領域名が一致していれば、設定なしで自動的にデータが紐付けられます。
表示のカスタマイズ
マッチしない領域の色設定
データが存在しない領域(アンマッチ)の色は「Data Colors」→「Unmatched」で設定できます。マッチした領域とアンマッチの領域を視覚的に区別することで、データの有無が一目でわかるようになります。
サチュレート(色の濃淡)で値を表現する
「Saturate」オプションを有効にすると、値の大きさに応じて色の濃さが変化します。値が大きいほど濃く、小さいほど薄く表示されます。
- 最小値の色の濃さ:「Min Saturation」で調整します。0 のままだと値が小さい領域がほぼ無色になるため、ある程度の値(例:30)を設定しておくと見やすくなります
- デフォルトカラー:塗りつぶしの基本色を変更できます
なお、「Show All」(領域ごとに異なる色を使用)を有効にしてサチュレートを組み合わせると、色の濃淡が分かりにくくなるため、サチュレートを使う場合は「Show All」を無効にすることをおすすめします。
ステート(条件による色分け)
値の範囲によって色を分けたい場合は「States」機能を使います。上から順に条件を定義し、それぞれの範囲に対して色を割り当てます。
設定例(小さい値から大きい値への向きの場合):
| ステート | 条件 | 色 |
|---|---|---|
| State A | 20 以下 | 白 |
| State B | 100 以下 | 薄い青 |
| State C | 500 以下 | 濃い青 |
| デフォルト | 500 超 | 紺 |
比較の向きは「等号の向き」で変更できます。大きい値から設定していく場合と小さい値から設定していく場合で、自然な定義の方向が異なります。
データラベルの表示
「Data Labels」を有効にすると、各領域に数値を表示できます。
- フォントサイズ:小さすぎる場合は「Point Size」を上げて調整します
- 位置:Best / Left / Middle などから選択できます
- 表示形式:エリア名のみ・値のみ・エリア名と値の組み合わせなど選択できます
- 表示単位:百万単位など、大きな数値の単位をずらして表示することも可能です
- アンマッチ非表示:データがない領域のラベルを非表示にすることもできます
凡例の表示
「Legend」セクションで凡例の表示・非表示、表示位置、タイトル、フォントサイズを設定できます。
カラーブラインドネス対応
「Color Blindness」オプションで、色覚に配慮した表示に切り替えることができます。
まとめ
今回は「Synoptic Panel for Microsoft Power BI」を使って、任意の画像上に領域を定義してデータを可視化する方法を紹介しました。
手順を整理すると以下のとおりです。
- Synoptic Designer に画像を読み込み、自動または手動で領域を定義・命名する
- 「Export to BI」で SVG ファイルとして保存する
- Power BI Desktop にカスタムビジュアル「Synoptic Panel」を追加する
- データ(Excel 等)を読み込み、Synoptic Panel ビジュアルに配置する
- SVG ファイルを読み込んでデータをマッピングし、色・ラベルなどを設定する
Synoptic Panel は「画像であれば何でも使える」という点が最大の特長です。地図はもちろん、建物のフロアマップや座席表など、業務で使うあらゆる図面をデータ可視化のベースとして活用できます。ぜひ皆さんの Power BI レポートに取り入れてみてください。