区别
D3 | Echarts |
---|---|
太底层,学习成本大 | 封装好的方法直接调用 |
兼容到IE9以上以及所有的主流浏览器 | 兼容到IE6以及以上的所有主流浏览器 |
通过svg来绘制图形 | 通过canvas来绘制图形 |
可以自定义事件 | 封装好的,直接用,不能修改 |
svg | canvas |
不依赖分辨率 | 依赖分辨率 |
基于xml绘制图形,可以操作dom | 基于js绘制图形 |
支持事件处理器 | 不支持事件处理器 |
复杂度高,会减慢页面的渲染速度 | 能以png或者jpg的格式保存图片 |
使用场景
一般是根据计算数据量的大小来进行分析:
1)对于客户的需求要求的图表拥有大量的用户交互场景,用d3比较方便,因为d3中的svg画图支持事件处理器,是基于dom进行操作的。想要实现某个操作,直接调用相关的方法实现效果即可。
2)对于大量的数据展示并且对于用户交互场景没什么要求,就只是展示数据,建议使用echarts,如果使用d3展示的每一个数据都是一个标签,当数据发生改变时图表会重新渲染,会不停的操作dom。
3)兼容性方面:echarts兼容到IE6及以上的所有主流浏览器,d3兼容IE9及以上所有的主流浏览器。