地理空间中的线数据是指一系列的点两两连线。如地图上的道路、河流、铁路等都可以用线数据来展示,可视化应用场景上经常用来展示驾车的路径轨迹,如下就是展示的某辆车一天的行车轨迹情况。
在地图上展示大量的轨迹数据容易会有叠加情况,造成视觉混淆,所有还是得分场景来展示。如上面是为了查看具体的某辆车的具体行驶轨迹,所以我们需要尽可能详细的展示这辆车的行驶轨迹细节,其他与之无关的信息尽量减少。但如果要是为了查看大数据的轨迹,目的就是理解我们数据的整体模式,而不是展现每一条线段,这时我们就可以对我们的轨迹进行简化抽稀合并处理。如下图我们展示的就是南京的出租车轨迹情况,轨迹叠加的越多的地方让它的颜色更亮一点,尽管有大量的轨迹重叠和交叉,还是可以看出大致的数据分布情况的。
面数据即由一系列的点组成的封闭空间。如展示地图上的建筑物面、行政区域边界、湖泊的面等。可视化展示方面主要是想展示面的属性,如密度数量等。最常使用到的是通过不同的颜色来表示这些属性值的大小情况。
如按省份、按城市来展示人口密度、销量等密度图。
如用echarts绘制的全国省份某产品用户分布情况:
人口迁徙,使用的是echarts和地图的结合,用来展示人们在各城市之间的迁徙情况,关注人类活动的地理分布。
在我们做的这么多数据可视化效果中,都是基于web来开发的,用到了canvas、WebGL、svg、node-canvas等一些技术。
这里面使用最多的就是canvas,选择它的原因主要还是因为在大数据量的呈现、像素级操作更好控制、还有在动画方面的绘制能力,都相比dom、svg有更多的优势。
同时我们也根据我们日常的可视化产品,开源了基于百度地图api的可视化库Mapv(),能更方便的展示点、线、面的地理位置数据