标如果你不熟悉 Elastic 地图,本教程是一个不错的起点。 它会指导你完成处理位置数据的常见步骤。在完成本教程后,你将学会:
- 创建具有多个图层和数据源的地图
- 使用符号、颜色和标签来设置数据值的样式
- 在仪表板中嵌入地图
- 在仪表板中跨仪表盘搜索
完成本教程后,你将拥有一个如下所示的地图:
在本教程的演示中,我将使用 Elastic Stac 8.5.2 来进行展示。
准备数据
我将使用 Kibana 自带的索引例子来进行展示。我们按照如下的步骤来摄入数据:
上面的操作将在 Elasticsearch 中创建一个叫做 kibana_sample_data_logs 的索引。这个索引的数据是关于网页请求的数据。它含有请求点的地理位置信息。
创建地图可视化
我们按照如下的方法来创建可视化:
第一个图层 - 添加等值线层
你将添加的第一层是等值线层,用于按网络日志流量对世界国家/地区进行着色。 深色代表网络日志流量较多的国家,浅色代表流量较少的国家。
这样我们就完成了第一个图层的设计。当我们点击上面图的任何部分,我们可以看到:
上面显示的 ISO 3166-1 alpha-2 code 为 US。它含有 127 个文档。这个依赖于当前时间选择的范围。深色区域显示是请求比较多的地方,而浅色的地方则表示请求比较少的地方。它展示的是每个国家的请求的多少分布。
第二个图层 - 为单个文档添加一个图层
为避免用户一次被太多数据淹没,你将为 Elasticsearch 数据添加两层。 当用户放大地图时,第一层将显示单个文档。我们安装如下的步骤来创建。点击上图中 Add layer:
如上所示,这个图层只有在地图的放大倍数为 9-24 时它才可以得到显示。在其他的 0-9 的放大倍数时,这个图层是不可见的。点击上面的 Save & close:
当我们把放大倍数置为超过 9 以后,我们可以看到上面的文档在地图上。否则,我们是看不到这些地图数据的。 你可以调整时间范围来显示文档,如果你的地图上还没有数据的话。
第三个图层 - 为聚合数据添加一个层
你将为聚合数据创建一个图层,并使其仅在地图缩小时可见。 较深的颜色将象征具有更多网络日志流量的网格,而较浅的颜色将象征具有较少流量的网格。 较大的圆圈表示传输的总字节数较多的网格,较小的圆圈表示传输的字节数较少的网格。我们按照如下的步骤来进行,点击上面的 Add layer:
当我们把 zoom 值调整到 0-9 的范围时,那么我们可以看到上面的图。颜色越深,则代表请求的越多。
这样我们就完成了地图的可视化。它有如上的三个图层组成。在实际的操作中,我们甚至可以调整整个图层的位置。比如,我们可以拖动下面的图标:
在我们的练习中,我们不需要改变这个上下层的关系,所以我们可以不做。点击上面的 Save & return 按钮:
这样就完成了我们的地图可视化图。
使用仪表盘来探索数据
查看吗的地理空间数据以及热图和饼图,然后筛选数据。 当你在一个面板中应用筛选器时,它会应用于仪表板上的所有面板。 我们按照如下的步骤来完成:
这样,我们就看到如下的一个仪表盘:
任务一:找出来 bytes 值为高的分布在哪里?
我们使用鼠标按照如下的方法来进行选择:
我们可以看到请求的位置发生在哪些地方。我们点击上图中的 x 符号来取消这个过滤器。
任务二:在地图上设置过滤器
我们在地图上点击一下:
点击上面的符号:
如上图所示,它仅显示了美国的索引数据,而其它国家的数据不见了。在上面它生成了一个过滤器。
我们可以把地图放大直到放大倍数超过 9:
我们可以看到当放大倍数超过 9 以后,另外一个图层出现,而之前的那个 cluster 的图层就不见了。