Help us understand the problem. What is going on with this article?

Maps(GIS) Appで遊ぼう

More than 1 year has passed since last update.

はじめに

なんか、Elastic Stackの新機能をだらだら紹介し続けるシリーズになってます。
今回は、6.7から追加されるMaps(GIS) Appの紹介です。

(2019.03.14追記あり

(2019.05.30追記あり)
7.2以降では、EMSへのアクセス方法が変わりました!デフォルトでは、Kibana経由ではなく、ブラウザ経由でのアクセスになってます。
日本語メッセージを有効にした状態だと、Map系(Maps App/Region Map/Coordinator Map)が使えません・・・EMSClientを作るときi18n.localeが設定されていると、その値がlanguageの値として入りますが、i18n.localeの値であるja-jpだとダメらしい。zh-cnもダメ。デフォルト値はenだけど、それ以外の値はだめっぽい・・・

使い方

6.7以降のElastic Stackを用意します。
左ペインにかTop画面にMapsというリンクがあるので、クリックするだけです。

top.png

画面

サンプルデータを入れると、DashboardだけでなくCanvasも、Mapsも、ついでにLogsも表示されるようになります。
下の画面は、eCommerce ordersについてくるMapsの画面です。

eCommerce_oders_1.png

でも、Proxyの内側で実行すると、こんな感じに地図が表示されません (;_;)

eCommerce_orders_2.png

このままだとさみしいので、適当な地図を追加してあげます(Openstreetmapとか)。

eCommerce_orders_3.png

でめ、まだエラー(Layersリストのところにうすーく黄色三角ビックリマーク付き)が出てます。
プロキシ環境下の方は直るまで待ちましょう・・・
#node-fetch使ってるところを修正しちゃえば良いんですが。

使い方

KibanaでMapというと、Coordinator MapやRegion Mapがあります(おっと、Vegaもありますね)。
これらは一つのデータソース(Index)だけ使うことができました。
Coordinator MapやRegion Mapでは、一つのフィールドを扱うぐらいしかできません。

ではMaps Appはというと、複数のデータソースを重ね合わせたり、複数のフィールドのデータを関連付けたりと、いろいろとできるようになります。
例えば先ほど表示したeCommerceのMapでは、Layerというところに、どんなデータソースからのデータを使っているかが表示されています。

eCommerce_oders_4.png

さらにさらに、ある一定のズーム倍率のときだけ地図上に表示する、ということもできます。
eCommerceのMapでは、Sales layerがそれにあたります(最低9倍ズームにした時から表示されますが、ほかのLayerは0倍から表示されてます)。

eCommerce_orders_5.png

ついでに、ほかのIndexのデータも表示してみます。
Layersの右横にある[Add layer]で表示されるリストから[Elasticsearch documents]を選んで、

eCommerce_orders_6.png

適当なIndex(とりあえずkibana_sample_data_flights)を選んで、[Add layer]を押します。

eCommerce_orders_6_1.png

特に何も変えずに[Save & close]を押すと、画面には赤丸がどばーっと表示されます。

eCommerce_orders_7.png

おわりに

まだGA前の機能なので不安定なところはありますが、いろいろと遊べそうな機能ですね。
正式発表が待ち遠しい!

追記

2019.03.14分

ダッシュボードへの埋め込みができるようになりました(7.1以降)。

ダッシュボード作成画面で、追加できる項目をよーく見ると「[eCommerce] Orders by Country」があるのがわかります。
各項目の左側にアイコンが表示されてて、それがGaugeなのか、Saved Searchなのかとかがわかりやすいですね。

embed_maps.png

Mapを追加して見ると、こんな感じです。

embed_maps_2.png

んー、これは良い!

tak7iji
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away