YellowfinにはGISマップの機能があり、GISデータ(ポイントとポリゴン)を地図に描写し、レポートデータに重ね合わせることができます。
ただし、前提条件としてGISデータを準備してデータベースに格納しておく必要があります。
この記事では、世界地図のポリゴンデータを準備して、Yellowfin上で国別に色分けして表示する方法をご紹介します。
世界地図のポリゴンデータの入手
Nature Earthというサイトで提供されているデータを利用します。
Terms of Useには以下の記述があり、自由に利用することができるようです。
All versions of Natural Earth raster + vector map data found on this website are in the public domain. You may use the maps in any manner, including modifying the content and design, electronic dissemination, and offset printing. The primary authors, Tom Patterson and Nathaniel Vaughn Kelso, and all other contributors renounce all financial claim to the maps and invites you to use them for personal, educational, and commercial purposes.
今回はDownloadsにあるMedium scale dataのCulturalを選択します。
Download countriesを選択してファイルをダウンロードしました。
QGISのインストール
ダウンロードしたのはシェープファイルと呼ばれる形式のデータです。
シェープファイルはGISツールで幅広く使用されている一般的な形式ですが、そのままだとYellowfinでは使用できないため、何らかの手段でデータベースへ投入する必要があります。
そこで、今回はQGISというオープンソースのGISツールを使用して、ひとまずCSV形式へ加工することにします。
QGISのダウンロードページから自分の環境に合ったものをダウンロードし、手順に沿ってインストールしてください。
QGISを使ってシェープファイルをCSVにエクスポート
ダウンロードしたZIPファイルは解凍しておきます。
そして、QGISを起動して、解凍した中にある .shpファイル をQGISへドラッグ&ドロップするとシェープファイルを読み込むことができます。
CSVにエクスポートするには レイヤを右クリック>エクスポート>新規ファイルに地物を保存 と進みます。
ファイル名をつけて保存します。設定項目がいろいろありますが、今回はGEOMETRYをAS_WKT
にしておけばOKです。
CSVをデータベースに投入する
エクスポートしたCSVは、以下のようにマルチポリゴンの情報に加えて、国名やISO国コードなどが含まれています。
このCSVファイルを、Yellowfinから接続するデータベースに何らかの方法で投入します。
特に方法は問いませんが、今回はYellowfinのトランスフォーメーションフローの機能を使用しました。
Yellowfinでビューを作成
上記のデータベースをデータソースとして、新たにビューを作成します。
今回はWKT
ISO_A2
ISO_A3
NAME_EN
NAME_JA
のカラムを有効にしました。
WKT
のカラムはコンバーターを使ってYellowfinのGISマップが使用できる形式に変換します。
コンバーターの種類は WKTジオメトリーコンバーター
を選択します。
WKT
のデータプレビューが GIS MultiPolygon という表示に変わればOKです。
Yellowfinのマップレポート作成
あとはYellowfinで先ほどのビューを使用してレポートを作成するだけです。
グラフの種類で GISマップ や GIS Googleマップ などを選択して、ジオフィールドにポリゴンのデータ(今回の例であればWKT
のカラム)を指定すれば、地図を描画できます。