Kibana-working-with-region-map

提供:Dev Guides
移動先:案内検索

Kibana-地域マップの操作

この視覚化により、地理的な世界地図上にデータが表示されます。 この章では、これを詳細に見てみましょう。

地域マップのインデックスを作成

地域マップの視覚化で動作する新しいインデックスを作成します。 アップロードするデータをここに示します-

{"index":{"_id":1}}
{"country": "China", "population": "1313973713"}
{"index":{"_id":2}}
{"country": "India", "population": "1095351995"}
{"index":{"_id":3}}
{"country": "United States", "population": "298444215"}
{"index":{"_id":4}}
{"country": "Indonesia", "population": "245452739"}
{"index":{"_id":5}}
{"country": "Brazil", "population": "188078227"}
{"index":{"_id":6}}
{"country": "Pakistan", "population": "165803560"}
{"index":{"_id":7}}
{"country": "Bangladesh", "population": "147365352"}
{"index":{"_id":8}}
{"country": "Russia", "population": "142893540"}
{"index":{"_id":9}}
{"country": "Nigeria", "population": "131859731"}
{"index":{"_id":10}}
{"country": "Japan", "population": "127463611"}

開発ツールで_bulk uploadを使用してデータをアップロードすることに注意してください。

今、Kibana Dev Toolsに移動して、次のクエリを実行します-

PUT/allcountries
{
   "mappings": {
      "_doc": {
         "properties": {
            "country": {"type": "keyword"},
               "population": {"type": "integer"}
         }
      }
   }
}
POST/allcountries/_doc/_bulk?refresh
{"index":{"_id":1}}
{"country": "China", "population": "1313973713"}
{"index":{"_id":2}}
{"country": "India", "population": "1095351995"}
{"index":{"_id":3}}
{"country": "United States", "population": "298444215"}
{"index":{"_id":4}}
{"country": "Indonesia", "population": "245452739"}
{"index":{"_id":5}}
{"country": "Brazil", "population": "188078227"}
{"index":{"_id":6}}
{"country": "Pakistan", "population": "165803560"}
{"index":{"_id":7}}
{"country": "Bangladesh", "population": "147365352"}
{"index":{"_id":8}}
{"country": "Russia", "population": "142893540"}
{"index":{"_id":9}}
{"country": "Nigeria", "population": "131859731"}
{"index":{"_id":10}}
{"country": "Japan", "population": "127463611"}

次に、すべての国のインデックスを作成します。 国のフィールドタイプを keyword として指定しました-

PUT/allcountries
{
   "mappings": {
      "_doc": {
         "properties": {
            "country": {"type": "keyword"},
            "population": {"type": "integer"}
         }
      }
   }
}

注意-地域マップを使用するには、キーワードとしてのタイプとして集計で使用するフィールドタイプを指定する必要があります。

キバナ地域マップ

完了したら、_bulkコマンドを使用してデータをアップロードします。

バルクを使用したキバナ

インデックスパターンを作成します。 [Kibana Management]タブに移動し、[インデックスパターンの作成]を選択します。

キバナ管理タブ

allcountriesインデックスから表示されるフィールドは次のとおりです。

表示されるすべての国のインデックス

地域マップを使ってみる

次に、地域マップを使用して視覚化を作成します。 Visualizationに移動し、Region Mapsを選択します。

visualization_using_Region_Maps

完了したら、_allcountries_としてインデックスを選択して続行します。

以下に示すように、集約メトリックとバケットメトリックを選択します-

集計メトリックの選択

バケットメトリック

ここでは、世界地図に同じものを表示したいので、国としてフィールドを選択しました。

地域マップのベクトルマップと結合フィールド

地域マップの場合、以下に示すようにオプションタブも選択する必要があります-

ベクターマップ

[オプション]タブには、世界地図にデータをプロットするために必要なレイヤー設定があります。

ベクトルマップには次のオプションがあります-

ベクトルマップオプション

国データがあるため、ここでは世界の国を選択します。

参加フィールドには次の詳細があります-

参加フィールド

インデックスには国名があるため、国名を選択します。

スタイル設定では、国に表示される色を選択することができます-

スタイル設定

レッドを選択します。 残りの詳細については触れません。

今、下に示すように世界地図にプロットされた国の詳細を見るために分析ボタンをクリックしてください-

分析ボタンをクリック

Kibanaの自己ホスト型ベクトルマップと結合フィールド

ベクトルマップと結合フィールドに独自のKibana設定を追加することもできます。 それを行うには、kibana configフォルダーからkibana.ymlに移動し、次の詳細を追加します-

regionmap:
   includeElasticMapsService: false
   layers:
      - name: "Countries Data"
      url: "http://localhost/kibana/worldcountries.geojson"
      attribution: "INRAP"
      fields:
         - name: "Country"
         description: "country names"

[オプション]タブのベクターマップには、デフォルトのデータの代わりに上記のデータが入力されます。 Kibanaが同じURLをダウンロードできるように、指定されたURLはCORS対応でなければならないことに注意してください。 使用するjsonファイルは、座標が連続するようにする必要があります。 たとえば-

https://vector.maps.elastic.co/blob/5659313586569216?elastic_tile_service_tos=agree

リージョンマップベクトルマップの詳細が自己ホストされている場合のオプションタブは以下に示されています-

ベクトルマップの詳細