同时推荐一下开源的方案,都是JS的,基于其它语言的也有,google之即可:
heatmap.js[1],在github上有2000多star,400多fork。它能够实现地图热度,同时还能探测鼠标的点击,实现屏幕热度。
webgl-heatmap[2].在github上有500多star。它主要是能实现高性能的大量数据的热度图。我粗略测试过百万条数据大概40s,这个是我们主力使用的库。
simpleheat[3].在github上100多star.LeafLet的热图插件,性能好,实现简单。
如果说ArcGIS是闭源。第一个库2011年就存在,至于有没有人参考就不得而知了。
前段时间有一个很好玩的需求;绘制上海行政区的边界线而且还要在地图上打上热力点,看了下百度地图可以实现就顺便研究了一下,简单的写了demo记录一下。1.首先获取每个行政区域的边界坐标值,可能会有很多。使用以下方法:
最后的json数据文件传不了,贴上又太多。需要的话也可以私发,或者通过上面方法一个区一个区自己获取;
2.获取到的坐标值存入boundaryPoints对象,开始绘制线;
也就是以上简单的两个步骤,行政区域就画好了。美中不足就是部分区域有误差,但是这些坐标值都是百度的API返回的。先看看效果图。
3.打热力点;其实吧这个需要使用的地图类型是type=webgl;引入的文件也不一样;
以上几个文件是需要额外引入的,其中mapv.min.js 和 common.js 在百度地图官方demo里扒下来放在本地才可以使用;
result数组里的热力点可能会有很多,我删了不少,大致就是这样;
4.最终效果
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)