当前位置: 首页 > news >正文

Kibana:圣诞老人使用 Kibana Dashboards 驾驶他的雪橇!

又到了每年一度的圣诞节了。圣诞老人今年开始向各个国家发放礼物了。他驾驶着自己的雪橇挨个国家发放礼物了。我们收集了去世界过个国家的首都的地理位置信息,并按照一定的顺序来发放礼物。我们可以轻松地使用 Elastic Stack 中的 Kibana 来创建一个 Maps 可视化来展现圣诞老人的行动轨迹。有关这个展示的数据,在这个展示中,我将使用最新的 Elastic Stack 8.5.3 来进行展示。

圣诞老人使用 Kibana Dashboards 驾驶他的雪橇_哔哩哔哩_bilibili

圣诞老人使用 Kibana Dashboards 驾驶他的雪橇

准备数据

你可以在地址 GitHub - liu-xiao-guo/geojson-world: geoJSON files of all Capitals and Countries of the world。在这个仓库中,它含有世界各个国家的首都的地理位置信息。我们首先从这个文件 capitals.geojson 进行处理。含有如下格式的数据:

    "type": "FeatureCollection",
    "features": [{
        "properties": {
            "country": "Bangladesh",
            "city": "Dhaka",
            "tld": "bd",
            "iso3": "BGD",
            "iso2": "BD"
        },
        "geometry": {
            "coordinates": [90.24, 23.43],
            "type": "Point"
        },
        "id": "BD"
    }

我们其实可以通过 Maps 来展示这个数据,尽管在我们的用例中不使用它:

这样我们就可以看到每个国家的首都在哪里了。 

我们需要自己对这个数据处理,并形成如下 NDJSON 格式的数据:

{"country":"Bangladesh","city":"Dhaka","tld":"bd","iso3":"BGD","iso2":"BD","location":{"coordinates":[90.24,23.43],"type":"Point"},"@timestamp":"2022-12-24T16:15Z"}
{"country":"Belgium","city":"Brussels","tld":"be","iso3":"BEL","iso2":"BE","location":{"coordinates":[4.2,50.5],"type":"Point"},"@timestamp":"2022-12-25T00:45Z"}

在处理的过程中,你可以使用 NDJSON converter 来进行转换。最终的文件我存放在 capital-city-data.ndjson 文件中。这个格式便于在 Kibana 中进行上传。请注意上面的每个文档的格式:

{
   "country":"Bangladesh",
   "city":"Dhaka",
   "tld":"bd",
   "iso3":"BGD",
   "iso2":"BD",
   "location":{
      "coordinates":[
         90.24,
         23.43
      ],
      "type":"Point"
   },
   "@timestamp":"2022-12-24T16:15Z"
}

它含有一个 geo_point 的数据 location.coordinates,以及一个时间戳字段 @timestamp。

导入数据

我们使用 Kibana 自带的工具 Upload file 来写入数据:

在上面,我们需要修改 @timestamp 及 location 两个字段的类型。点击 Import 按钮:

上面显示我们有 113 个数据被写入到 Elasticsearch 中。我们点击上面的 View index in Discover 按钮:

从上面我们可以看出来,共有 113 个文档。它的时间范围是 2022年 12 月 24 日 20:10 分开始,终于 2022 年 12 月 25 日 21:50。也就是在这个时间范围里圣诞老人开始驾驶自己的雪橇周游各个国家的首都。

使用 Maps 来追寻圣诞老人 

我们接下来创建一个 dashboard 来追寻圣诞老人的足迹:

 

 

在上面,我们选择下载的 santa 的图像来作为我们定制的图像。

这样我们就完成了整个地图的设计。

接下来,我们使用 Maps 的播放功能来展示 Santa 的行走轨迹:

如果我们的时间间隔选择的足够小,使得我们在显示的窗口中只有仅有一个数据,那么我们就可以完美地展现圣诞老人的行走轨迹。 

大家有没有觉得,如果我们把这个应用到新冠疫情的人员轨迹上,是不是也非常有用啊 :)

相关文章:

  • 离线下载NLTK依赖包([WinError 10061] 由于目标计算机积极拒绝,无法连接)的解决方案
  • 基于matlab的MIMO-OFDM无线信道模型距离与路径损耗的仿真
  • 0.96寸OLED显示屏介绍续
  • 90后,27岁转行软件测试,从月入3000+到月薪过万,打开了人生新篇章~
  • 2022年安徽最新交安安全员考试模拟题及答案
  • C++【图】
  • 【信号与系统】傅里叶级数和周期信号过系统及MATLAB仿真
  • [洛谷]【深基15.习9】验证栈序列
  • NanoDet 源码解读(inference)
  • 面试必备:从常见的存储引擎到混淆的锁分类,请上车
  • SAP ABAP——SAP简介(二)【SAP主要产品时间线】
  • JavaScript 入门基础 / 概念介绍(一)
  • [2]MQTT基础知识
  • 基于ACO蚁群优化实现VRPTW问题求解matlab仿真
  • Zabbix与乐维监控对比分析(五)——可视化篇
  • 陈都灵现身海南国际电影节,新片《关索岭》票房有望超《阿凡达》
  • 【经典设计】构建业务架构的3大视图
  • leetcode997. 找到小镇的法官,同样的思路,被佬的操作秀到了_图篇
  • 基于FPGA的 TMDS 编码 及 HDMI 显示
  • 【OpenCV-Python】教程:7-3 理解KMeans