📜  Kibana-使用区域地图

📅  最后修改于: 2020-11-30 05:19:31             🧑  作者: Mango


通过此可视化,您可以看到地理世界地图上表示的数据。在本章中,让我们详细了解一下。

创建区域地图索引

我们将创建一个新索引来使用区域地图可视化。我们将要上传的数据显示在这里-

{"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"}

接下来,让我们创建索引所有国家。我们已将国家/地区字段类型指定为关键字

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

注意-要使用区域地图,我们需要指定要与聚合一起用作关键字类型的字段类型。

基巴纳州地图

完成后,使用_bulk命令上传数据。

Kibana使用散装

现在,我们将创建索引模式。转到“ Kibana管理”选项卡,然后选择“创建索引模式”。

Kibana管理标签

这是所有国家/地区索引中显示的字段。

显示所有国家的索引

区域地图入门

现在,我们将使用“区域地图”创建可视化。转到可视化并选择区域地图。

visualization_using_Region_Maps

完成后,选择索引作为所有国家/地区并继续。

选择聚合指标和存储桶指标,如下所示-

选择聚合指标

桶指标

在这里,我们选择了字段作为国家,因为我想在世界地图上显示相同的字段。

向量图和区域图的联接字段

对于区域地图,我们还需要选择“选项”选项卡,如下所示:

矢量地图

选项选项卡具有“图层设置”配置,这是在世界地图上绘制数据所必需的。

向量图具有以下选项-

矢量地图选项

在这里,我们将选择世界国家/地区,因为我有国家/地区数据。

Join字段具有以下详细信息-

加盟领域

在索引中,我们有国家名称,因此我们将选择国家名称。

在样式设置中,您可以选择要显示的国家/地区的颜色-

样式设定

我们将选择红色。我们将不涉及其余的细节。

现在,单击分析按钮以查看在世界地图上绘制的国家的详细信息,如下所示-

单击分析按钮

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"

选项选项卡中的矢量地图将填充以上数据,而不是默认数据。请注意,给定的URL必须启用CORS,以便Kibana可以下载该URL。所使用的json文件应采用使坐标连续的方式。例如-

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

自托管区域地图矢量地图详细信息时的选项选项卡如下所示-

矢量地图详细信息