• 数据可视化工具D3js &Highcharts&Echarts


    首先先说一下Canvas和Svg的区别
    Canvas:
    基于像素
    单个html,类似于在画布上画画
    Echarts基于Canvas画图
    Svg:
    基于对象模型
    多个图形元素
    高保真 即放大也不会失真
    echarts
    先大体了解一下echarts的历史: 
    echarts是百度公司前端开发的一个图表库。 
    支持柱状图、饼状图、k线图、map图、热导向图、折线图 
    主要采用canvas画图。
     
    highchart
    highcharts是国外的一家公司开发的图表库,主要采用svg画图。 
    支持的图表也很多,功能也比较强大。
     
     
    官方网站:http://www.hcharts.cn/
     
    D3.js
    3 (或者叫 D3.js )是一个基于 web 标准的 JavaScript 可视化库. D3 可以借助 SVG, Canvas 以及 HTML 将你的数据生动的展现出来. D3 结合了强大的可视化交互技术以及数据驱动 DOM 的技术结合起来, 让你可以借助于现代浏览器的强大功能自由的对数据进行可视化.
     
    官方网站:https://d3js.org/
     
     
    Web开发过程中选择使用哪一个插件是很重要的问题。大多情况一般会从以下几点考虑。
    1.兼容性
    使用一个插件之前必须要先评估一下它对浏览器的兼容性,不然写完了发现没法儿用就得不偿失了。
    经过多次尝试,我初步判断这三个插件的兼容性是这样的:
    • Highcharts 兼容 IE6 及以上的所有主流浏览器,完美支持移动端缩放、手势操作。
    • Echarts 兼容 IE6 及以上的所有主流浏览器,同样支持移动端的缩放和手势操作。
    • D3 兼容IE9 及以上的所有主流浏览器,对于移动端的兼容性也同上。
    也就是说,这三个插件都兼容IE9及以上的所有主流浏览器,但如果开发需求中包括IE7/IE8,那么就只能选择Highcharts或者Echarts了。
    2.是否免费/开源
    • Highcharts 非商业免费,商业需授权,代码开源。
    • Echarts 完全免费,代码开源。
    • D3 完全免费,代码开源。
    考虑到Highcharts用于商业用途时还需要授权,而其它两个都不需要,那么在其他条件都相同的情况下,可以考虑用另外两个插件。
    3.难易程度
    • Highcharts 基于SVG,方便自己定制,但图表类型有限。
    • Echarts 基于Canvas,适用于数据量比较大的情况。
    • D3.v3 基于SVG,方便自己定制;D3.v4支持Canvas+SVG,如果计算比较密集,也可以选择用Canvas。除此之外,D3图表类型非常丰富,几乎可以满足所有开发需求,但代码相对于以上两个插件来说,会稍微难一点。
    基于此,如果你能力很强,可以直接用D3。反之,如果你是一个初学者或者对于这方面没那么熟悉,那么就要从这几点来考虑了:如果数据量比较大,可以考虑Echarts;如果只是一些简单的数据,且客户对界面定制较多,则可以考虑使用highcharts;如果前两者都不能满足需求,那么就只能用D3来一点一点做了。
  • 相关阅读:
    Git常用命令大全
    前端开发常用正则表达式
    如何让360、遨游、猎豹等双核浏览器默认以webkit内核渲染网页?
    IE如何兼容placeholder属性
    利用sublime的snippet功能快速创建代码段
    浏览器内核总结
    display:inline-block引发的间隙问题解决办法
    常用的CSSreset整理
    input输入框的border-radius属性在IE8下的完美兼容
    详细讲解Android中的AbsListView的源码
  • 原文地址:https://www.cnblogs.com/lhxsoft/p/13554727.html
Copyright © 2020-2023  润新知