引 言
说到数据可视化,那必定少不了对于图表的应用,github上star前三的数据可视化库分别为D3、Chart.js、ECharts。今天主要介绍的是百度公司开源的ECharts,它的优点是开源免费、功能丰富、社区活跃、提供多种数据的支持包括流数据,并能优化移动端、实现跨平台的应用。
丰富的可视化类型
ECharts 提供常规的折线图、柱状图、散点图、饼图、K线图以外,还提供用于统计的盒形图,用于地理数据可视化的地图、热力图、线图,用于关系数据可视化的关系图、treemap、旭日图,多维数据可视化的平行坐标,还有用于 BI 的漏斗图,仪表盘,并且支持图与图之间的混搭。
另外还有一些周边生态:
1. ECharts GL,为 ECharts 补充了丰富的三维可视化组件
2. Liquidfill 水球图
3. Wordcloud 字符云
4. Extension for Baidu Map 百度地图扩展
Tips
问题:当修改setOption值的时候,我们异步回来的数据层级比较深的情况下,需要ECharts重绘,否则不会如愿显示,主要体现于我们可以增加数据,但是减少数据时,会发现视图上仍保持着数据最多时的展示效果。
解决:myChart.setOption({...},true),详见官方文档:
其实ECharts的初始化动画时间、动画的曲率都是可以调整的,步骤如下:
(1)animationDuration,初始动画的时长,支持回调函数,可以通过每 个数据返回不同的时长实现更戏剧的初始动画效果。
(2)animationEasing,初始动画的缓动效果。
ECharts其实是有全局调色盘的,设置color属性后,可不必在series,legend中单独设置。
使用ECharts的graphic的type: "image"自定义背景图,当然支持多张图片,另外需要注意的是,如果多张图片有层叠,也是可以设置Z属性来进行层级设置。
tooltip轮播
后 言
ECharts正处于一个不断迭代进步的上升期,之前我也在官网提过issue,并且很快得到了解决:
https://github.com/apache/echarts/issues/14601。
最后推荐几个ECharts的社区的demo集:
① https://www.makeapie.com/explore.html#sort=rank~timeframe=all~author=all (暂停服务)
② http://ppchart.com/#/
③ https://echarts.isqqw.com/#/homepage
④ http://analysis.datains.cn/finance-admin/#/chartLib/all
第一个算是社区的官方网站,只可惜2月份之后就暂停服务了,找了其他几个make a pie的镜像地址来代替。
之前make a pie可以自己上传作品,现在这些镜像地址还暂时不能。这里附上之前上传的一个作品,停车峰谷值平均值趋势折线图:
https://echarts.isqqw.com/#/echartsdetail?id=18612。
本文所有文字版权均属“宝略科技”,更多内容请搜索关注【宝略科技】微信公众号~