ArcGIS API for Javascript 4.x扩展Echarts4三维渲染
上一篇博客主要介绍了ArcGIS API for Javascript 4.X
结合Echarts 4
实现了二维地图上的数据渲染,包括散点图和轨迹图,对应series
里的scatter
、effectScatter
、lines
。
本篇博客主要介绍基于三维地图上的数据渲染(实现思路有参考业余敲代码分享的博客内容),如下图所示为经典的模拟迁徙的渲染效果:
二者集成有一个最重要的问题就是坐标系不统一,因此要进行echarts坐标系与arcgis坐标系的转换,这里采用的方法借鉴了业余敲代码的思路,即自己注册一个坐标系统:命名为arcgis
(名称可自由拟定)的坐标系。在此基础上,我采用dojo
的define
定义了一个名为EchartsglLayer
的模块,其中注册arcgis
坐标系方法如下:
//需要先引用echarts.js
echarts.registerCoordinateSystem('arcgis', this.defineCoordinateSystem(view));
在defineCoordinateSystem()
函数中,对echarts里面的几个函数进行了重写,其中主要包含dataToPoint
、pointToData
等坐标转换内容。下面列出重写datatoPoint部分代码:
CoordSystem.prototype.dataToPoint = function dataToPoint(data) {
var point = {
type:"point",
x