みなさんご存知の通り、SAS Visual AnalyticsはセルフサービスBI&Analyticsツールで、ビジネスユーザー自身で簡単にレポートやダッシュボードを作成することができます。その際、標準で備わっている数多くのチャートオブジェクトを使用することができますが、お客様要件によっては、標準のチャートタイプだけでは表現できないものもあります。それに答えるためにSAS Visual Analytics 8.2(以下VA)には大きく2つの機能が用意されています。
- データドリブンコンテンツ
- 地図上のカスタム境界線描画
1番目の「データドリブンコンテンツ」とは、サードパーティのビジュアライゼーション・ライブラリ(D3.js, C3, Google Chart Toolsなど)と連携することで、チャートタイプやビジュアルのバリエーションを大幅に拡張可能な機能ですが、
今回は、2番目の「地図上のカスタム境界線描画」機能に関してご紹介します。
VAに標準搭載のチャートオブジェクトには地図描画のための「ジオマップ」オブジェクトが含まれています。この機能を活用することで、例えば、地図上で隕石落下地点と被害の度合いを分析(図1.参照)したり、都道府県別の売上や店舗別の顧客数などをビジュアライズし、分析(図2.参照)することができます。
地図描画のタイプとしては、図1の「座標」、図2の「バブル」以外に「領域」を選択可能です。
「座標」とは、地図上の該当ポイントに円形や星形などのアイコンを表示するものです。
そして、「領域」では、基本的に地図上の国の境界線や、その一つ下のレベルである州や都道府県の境界線領域を描画します。例えばアメリカの州や日本の都道府県の領域を指定した値に基づき色分けして表示するものです。(図3.参照)
さらに、地図上に表示するこの「領域」をカスタムで描画することが可能で、これを「カスタム境界線(領域)」描画機能と呼んでいます。
この機能を活用することで、例えば、特定施設内の人や物の動線を描画したり、家屋ごとのソーラー発電量を実際の地図上に描画することなども可能になります。
その基本的な手順を、アメリカにあるコロラド・コンベンション・センター(以下CCC)内のミーティングフロアにある各種の会議室領域の描画を例に、以下に示します。
図4. VAレポート上に表示された完成版(部屋ごとの面積などを色分けして描画することができます)
- CCCのフロアレイアウト画像を入手し、市販ツールあるいはオープンソース製品を使用し、Esri shapeファイルを作成
- Esri ShapeファイルをVA環境にインポート
- インポートしたデータに基づきカスタム境界線(領域)をレポート上に描画
1. CCCのフロアレイアウト画像を入手し、市販ツールあるいはオープンソース製品を使用し、Esri Shapeファイルを作成
この例では市販のEsri Desktopツールを使用し、CCCのサイトから入手したフロアレイアウトの画像をEsri地図上に重ね(図5.参照)、部屋の輪郭をなぞって描き(図6.参照)、結果をEsri Shapeファイルとして保存(図7.参照)します。(詳細に関しては、使用するツールのマニュアルを御覧ください。)
図5. Esri地図上のCCCのある地点の上に、CCCのフロアレイアウト画像を重ねる
図6. 部屋の輪郭をなぞって描く(描いた領域ごとにIDを設定しておきます。この例ではRoomID)
2. Esri ShapeファイルをVA環境にインポート
VA環境に実装されているマクロ%SHPIMPRTを使用し、Esri ShapeファイルをSAS Datasetに変換(以降Shapeデータ)し、VA環境(インメモリー)にロードします。
詳細は、以下サポートサイトにあるSAS Viya管理者(Administration)マニュアルを御覧ください。
https://support.sas.com/documentation/onlinedoc/viya/index.html
また、このShape情報は、あくまで地図上に境界線(領域)を描くための枠組みにすぎないので、その領域をどんな値(指標)に基づき描画させるのかという情報を持ったデータが必要になります。この例では、部屋(RoomID)ごとの面積の情報を持ったデータ(以降、可視化データ)を使用します。
(注. Shapeデータ内のRoomIDと可視化データ内のRoomIDは一致している必要があります。)
今回は、変換済みのShapeデータと、連携させる可視化データを用意していますので、これらのデータをダウンロードして、以下の手順通りに試してみましょう!
>>Shapeデータ:denver_convention_center_shapes.csv
denver_convention_center_shapes
>>可視化データ:denver_convention_center.csv
まず、この2つのデータをメモリーにロードします。
データソースを開く画面内で、インポート>ローカルファイルを選択し、ロード対象のファイルを選択し、(図8.参照)
図8. VAのGUI画面からローカルにあるShapeデータと可視化データをインポート
データソースを開く画面内に表示された個々のファイルを選択し、「アイテムのインポート」をクリック、または、可視化データファイルを選択し、「すべてインポート」をクリック
インポートが完了したら、可視化データを選択し、OKをクリック。
3. インポートしたデータに基づきカスタム境界線(領域)をレポート上に描画
詳細は、以下サポートサイトにあるSAS VA8.2ユーザー操作マニュアルを御覧ください。
https://support.sas.com/documentation/onlinedoc/va/index.html
3-1. データソースとしてメモリーにロード済みの「可視化データ」に基づき、VAで新規作成するレポート画面が表示されています。(図9.参照)
3-2. 可視化データソース内の可視化対象項目である「Room ID」の分類を「ジオグラフィー」に変更します。(図10.参照)
図10. 「Room ID」の分類を「ジオグラフィー」に変更
表示されるジオグラフィーアイテムの編集画面内で、以下を設定。
3-2-1. ジオグラフィーデータタイプから「カスタムポリゴン形」を選択(図11.参照)
図11. ジオグラフィーデータタイプから「カスタムポリゴン形」を選択
3-2-2. 「カスタムポリゴンプロバイダ」欄で「新しいポリゴンプロバイダを定義」をクリック(図12.参照)し、
図12. 「カスタムポリゴンプロバイダ」欄で「新しいポリゴンプロバイダを定義」をクリック
表示される「新しいポリゴンプロバイダ」画面内で以下のように設定(図13.、14.、15.参照)し、OKをクリック。
・名前:CCC demo
・ラベル:Colorado Convention Center Floors
・タイプ:CASテーブル
・サーバー:Shapeデータをロードしたサーバー
・ライブラリ:Shapeデータをロードしたライブラリ
・テーブル:ロードしたShapeデータ
・ID列:Shapeデータ内のID列
・シーケンス列:Shapeデータ内のsequence列
・詳細のセグメント列:Shapeデータ内のSEGMENT列
・詳細の緯度(y)列:Shapeデータ内のy列
・詳細の軽度(x)列:Shapeデータ内のx列
・詳細の座標空間:デフォルト:EPSG:4326(必要に応じて変更)
3-2-3. 引き続き、ジオグラフィーアイテムの編集画面内で以下を設定(図16.参照)し、OKをクリック。
・領域ID:可視化データ内の描画領域に該当する項目
・緯度(y):可視化データ内の描画領域の緯度列
・軽度(x):可視化データ内の描画領域の軽度列
・座標空間:デフォルト:世界測地系WGS84(必要に応じて変更)
図16. ジオグラフィーアイテムの編集画面内設定項目(続き)
3-3. 定義した「CCC demo」項目がジオグラフィー項目として表示される。(図17.参照)
3-4. オブジェクト画面内から「ジオマップ」オブジェクトをレポートキャンバス内へドラッグ(図18.参照)
図18. 「ジオマップ」オブジェクトをレポートキャンバス内へドラッグ
3-5. レポートキャンバスに表示されたジオマップを選択し、オプション画面内でマップのタイプに「領域」を選択(図19.参照)
ヒント!:タイトルや凡例を非表示にすることで地図描画領域を広げることができます。
3-6. ジオマップを選択し、データ役割画面内でカテゴリーに「CCC demo」、色に「Total_square_feet」を選択すると、CCCの会議室領域が部屋の広さに応じて色分けされVAレポート上に描画されます。(図20.参照)
図20. VAレポート上に描画されたCCCの会議室領域マップ完成版
さらに、
描画されたカスタム境界線(領域)とVAに標準搭載の各種チャートタイプやアナリティクスオブジェクト間はインタラクションも可能ですし、
ArcGIS Onlineの地図データではなく、ローカルにEsriサーバーを設定すれば、Shapeファイル作成時に使用したCCCのフロアレイアウト自体を地図上に表示した上で会議室領域を描画することも可能です。
カスタム境界線(領域)機能を用いたサンプルレポート:
2 Comments
Can I get this blog in English?
Unfortunately, there is no English version of this blog.
However, There are some English blogs related custom polygon feature of Visual Analytics in the following SAS blog site.
https://blogs.sas.com/