D3 的优点

可视化的库有不少,基于 JavaScript 开发的库也有不少,D3 有什么优点呢?算法

(1)数据可以与 DOM 绑定在一块儿函数

D3 可以将数据与 DOM 绑定在一块儿,使得数据图形成为一个总体,即图形中有数据、数据中有图形。那么在生成图形或更改图形时,就能够方便地根据数据进行操做,而且,当数据更改以后,也能简单地更改图形。布局

(2)数据转换和绘制是独立的ip

将数据变成图表,须要很多数学算法。不少可视化库的作法是:开发

提供一个函数 drawPie() ,输入数据,直接绘制出饼状图。数学

但 D3 的作法是:可视化

提供一个函数 computePie(),可将数据转换成饼状图的数据,而后开发者可以使用本身喜欢的方式来绘制饼状图。打包

虽然看起来 D3 使得问题变得麻烦了,可是在图表要求比较复杂的时候,直接绘制的饼状图每每达不到要求,细微的部分没有办法更改。而 D3 将二者分离开来,就极大地提升了自由度,以致于开发者甚至可使用其余的图形库来显示 D3 计算的数据。网页开发

(3)代码简洁互联网

JQuery 是网页开发中很经常使用的库,其中使用了链式语法,被不少人喜好。D3 也采用了这一语法,可以一个函数套一个函数,使得代码很简洁。

(4)大量布局

饼状图、树形图、打包图、矩阵树图等等,D3 将大量复杂的算法封装成一个一个”布局“,用于转换数据。可以适用于各类图表的制做。

(5)基于SVG,缩放不会损失精度

SVG,是可缩放的矢量图形。D3 的绘制大部分是在 SVG 上绘制的,而且提供了大量的图形生成器,使得在 SVG 上生成图形变得简单。

另外,因为 SVG 是矢量图,放大缩小不会有精度损失。

 

 

本文来自互联网,若有侵权请联系删除

相关文章
相关标签/搜索