当前位置:网站首页>DataGear 使用坐标映射表制作地理坐标数据可视化看板
DataGear 使用坐标映射表制作地理坐标数据可视化看板
2022-06-21 18:10:00 【DataGear】
DataGear 的数据集结构是由数据集属性表示的,数据集属性并不要求与实际的数据结构一致,可以自由新增、编辑、删除。利用这一特性,可以为数据集添加占位属性(没有对应实际数据),然后在看板展示其关联的图表时,通过dg-chart-listener的onUpdate函数补全数据,从而实现数据扩展功能。
本文以地图飞线图为例,介绍如何利用上述特性,为仅包含地区名称信息的数据集,制作数据可视化看板。
假设有如下地区名称数据集:
名称:
源点地区名/终点地区名
数据:
源点地区名, 终点地区名
新疆, 北京
四川, 北京
广东, 北京
浙江, 北京
执行预览后,它的属性列表为:
名称 类型
源点地区名 字符串
终点地区名 字符串
地图飞线图需要数据集具有如下属性:源点经度、源点纬度、终点经度、终点纬度,因此,这里为上述数据集手动添加这四个占位属性:
名称 类型
源点地区名 字符串
终点地区名 字符串
源地区经度 数值
源地区纬度 数值
终地区经度 数值
终地区纬度 数值
然后,新建地图飞线图,如下所示:
名称:地图飞线图
图表类型:地图飞线图
数据集:
源地区经度 -> 源点经度
源地区纬度 -> 源点纬度
终地区经度 -> 终点经度
终地区纬度 -> 终点纬度
此时展示图表将是空白飞线图,因为并没有实际的地理坐标数据。
然后,新建看板,添加上述图表,为其添加dg-chart-listener图表监听器,并通过它的onUpdate函数补全地理坐标数据,如下所示:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css"> .chart{
display: inline-block; width: 100%; height: 500px; } </style>
<script> //地区名->地理坐标映射表 var coordMap= {
"新疆": [85.523256,41.094106], "四川": [103.037483,30.450264], "广东": [113.560737,23.669933], "浙江": [119.962996,29.037435], "北京": [116.651482,40.253657], }; var chartListener= {
onUpdate: function(chart, results) {
var result = chart.resultFirst(results); var datas = chart.resultDatas(result); for(var i=0; i<datas.length; i++) {
var di = datas[i]; var srcCoord = (coordMap[di['源点地区名']] || {
}); var targetCoord = (coordMap[di['终点地区名']] || {
}); di['源地区经度'] = srcCoord[0]; di['源地区纬度'] = srcCoord[1]; di['终地区经度'] = targetCoord[0]; di['终地区纬度'] = targetCoord[1]; } chart.resultData(result, datas); } }; </script>
</head>
<body>
<div class="chart" dg-chart-listener="chartListener" dg-chart-widget="上述图表ID"></div>
</body>
</html>
点击[保存并展示]按钮,打开看板展示页面,完成!!!
效果图如下所示:

源码地址:
Gitee:https://gitee.com/datagear/datagear
边栏推荐
- 机器学习之神经网络与支持向量机
- 【区间和专题の前缀和】线段树(动态开点)运用题
- 11 Beautiful Soup 解析庫的簡介及安裝
- 【力扣10天SQL入门】Day1
- How to simulate a request or modify a requested domain name in Chrome browser
- 一次 MySQL 误操作导致的事故,「高可用」都顶不住了!
- How to set the picture background to transparent
- Patch package cannot be used to patch pnpm
- 第298场周赛
- R language uses GLM function to build Poisson regression model, and coef function to obtain the coefficients of Poisson regression model and analyze the effects of various variables
猜你喜欢
![[pwn基础]Pwntools学习](/img/72/0f80d2f91d772e361b6d23a67e2ca3.png)
[pwn基础]Pwntools学习

如何使用DevExpress WPF在WinUI中创建第一个MVVM应用?

Jupyter Notebook启动方式及相关问题

在Qt中设置程序图标的方法介绍
![婴儿名字[连通分量之邻接矩阵与DFS]](/img/60/83da6ce2fd2336fe1c4aead3260b77.png)
婴儿名字[连通分量之邻接矩阵与DFS]

Use the uniapp framework to build the zheliban micro application (single sign on, embedded point, aging adaptation, RPC gateway)

一次 MySQL 误操作导致的事故,「高可用」都顶不住了!

将图片背景设置为透明的方法介绍

How to use devaxpress WPF to create the first MVVM application in winui?

Hongmeng version of "Tiktok" is a great experience
随机推荐
R language uses GLM function to build Poisson regression model, and coef function to obtain the coefficients of Poisson regression model and analyze the effects of various variables
线上开期货户是否安全啊?不去线下可以开户吗?
CPDA|数据分析师需要具备哪些基本功?
How many correct answers can you get to Huawei Hongmeng certification test questions?
homeassistant addons
Security框架中使用FastJson反序列化SimpleGrantedAuthority
Is there a Hongmeng version of the song ordering system? Lao Wang was the first to experience it
Codeforces Round #394 (Div. 2) E. Dasha and Puzzle
【区间和专题の前缀和】前缀和 + 哈希表 运用题
2022年下半年深圳地区数据分析师认证(CPDA),[进入查看]
GetEmptyBlcoksPre Info
【综合笔试题】难度 2.5/5 :「树状数组」与「双树状数组优化」
The main data products of China's two Fengyun meteorological "new stars" will be open and shared with global users
Selection skills of national production reinforced Ethernet switch
Whether Gorm database needs to set foreign keys
508. Most Frequent Subtree Sum
一次 MySQL 误操作导致的事故,「高可用」都顶不住了!
vivo 容器集群监控系统架构与实践
2022年6月25日PMP考试通关宝典-4
CloudCompare&PCL 点云点匹配(基于欧式距离)