• Kibana:摄入 GeoJSON 数据


    GeoJSON 是一种用于编码各种地理数据结构的格式。例如:

    1. {
    2. "type": "Feature",
    3. "geometry": {
    4. "type": "Point",
    5. "coordinates": [125.6, 10.1]
    6. },
    7. "properties": {
    8. "name": "Dinagat Islands"
    9. }
    10. }

    GeoJSON 支持以下几何类型:Point、LineString、Polygon、MultiPoint、MultiLineString 和 MultiPolygon。 具有附加属性的几何对象是特征对象。 特征集包含在 FeatureCollection 对象中。GeoJSON 可以用于 Elastic Maps 应用中。

    在本教程中,你将构建一个自定义地图,显示两个机场之间的飞行路径,以及该路线上的闪电热点。 你将学会:

    • 将 GeoJSON 文件导入 Kibana
    • 索引 Elasticsearch 中的文件
    • 在多层地图中显示数据

    摄入 GeoJSON 数据

    准备工作

    本教程要求你下载以下 GeoJSON 示例数据文件。 这些文件是你可以上传到 Kibana 并在 Elasticsearch 中建立索引以便在地图中显示的矢量数据类型的很好示例。

    这些数据代表了两个真实的机场、两条虚构的飞行路线和虚构的闪电报告。 你可以不需要使用所有这些文件来完成如下的练习。你可以随意使用任意数量的文件,或使用你自己的有效 GeoJSON 文件。

    下载后,我们的文件如下:

    1. $ pwd
    2. /Users/liuxg/data/geojson
    3. $ ls
    4. bangor_international_airport.geojson modified_flight_path.geojson
    5. lightning_detected.geojson original_flight_path.geojson
    6. logan_international_airport.geojson

    创建并设置地图

    我们首先打开 Maps 应用: 

    放大美国东北部的新英格兰地区。你正在向该区域添加飞行路径,这会设置地图以便更好地查看数据。

    我们首先来上传 logan_international_airport.geojson 这个文件。点击上图中的 Add layer 按钮:

    我进一步对这个机场进行定制。我们使用 icon 来表示这个机场。点击上面的 Save & close:

    这样我们就得到了 Logan 国际机场的一个坐标点。

    按照同样的套路,我们把 Bangor 国际机场也标出来。我们使用 bangor_international_airport.geojson 文件:

    这样我们就得到了两个机场的位置图。

    我们接下来把闪电分别图添加进来。这次我们使用的是  lightning_detected.geojson:

    上面的绿色的点代表闪电发生的位置。

    我们接下来把另外的两个路线图也摄入进来:original_flight_path.geojson 及 modified_flight_path.geojson,并以不同的颜色来表示:

    如上所示,我们已经成功地把路线图加到地图上了。

    接下来,我们添加一个 heatmap 聚合层。

    查看 Lightning detected 层,可以清楚地看到闪电击中的位置。 不太清楚的是,某些地区是否比其他地区发生了更多的雷击,换句话说,闪电热点在哪里。 为雷击建立索引的 geo_point 数据的一个优点是你可以对数据执行聚合。 

    点击上面的 Add layer:

    从上面的可视化中,我们可以看出来为啥我们需要重新规划飞行的路线,因为原飞行路线有闪电的发生。

    为了能够更好地进行可视化,我们可以把每个图层都修改为自己喜欢的名字:

    我们可以通过拖动图层来改变每个图层的顺序以使得更好的展示:

    调整过后的图层如下:

  • 相关阅读:
    OpenTiny HUICharts 正式开源发布,一个简单、易上手的图表组件库
    一阶差分和二阶差分概念及其举例
    二级医院绩效考核系统源码,针对院内实际情况,可对考核方案进行灵活配置
    JDBC 中的类与接口
    HarmonyOS 4.0 实况窗上线!支付宝实现医疗场景智能提醒
    【多卡训练报错】:The server socket has failed to listen on any local network address.
    Spark scala编程练习题——通过日志统计网站访问量
    【前端】不同类型数据组装拼接
    aop-动态代理,cglib动态代理,面向切面编程,aop的实现方法
    在kubernetes中部署kubersphere
  • 原文地址:https://blog.csdn.net/UbuntuTouch/article/details/127993592