Bha*_*waj 5 javascript dojo dojox.gfx d3.js
我打算使用D3或Dojo GFX之一来创建一些大数据视觉效果,如TreeMap,Wave-forms等.D3的优点在于,许多这些可视化已经可用作快速开发的示例实现.它的enter-update-exit范例也非常适合我的数据集.但我不反对使用Dojo GFX(并编写我自己的Treemap等实现),如果它被认为更稳定,更适合移动.
寻求建议和比较......
简而言之,答案很简单:如果您使用的是dojo,请使用GFX模块.如果您不使用dojo,请使用D3.
更重要的是,GFX和D3实际上是相同的东西:低级绘图API(这里是可视化工具包),两者都可以与更大的javascript框架一起使用.事实上,GFX 必须在dojo中使用.
由于图形/图表/绘图/任何东西通常只是Web应用程序的一部分,因此底层框架体系结构应该是选择可视化工具包的驱动力.所以基本上,如果你去dojo或者是什么会为你回答这个问题,如果你这样做,GFX是一个很好的选择,因为它已经出炉了(虽然我应该提到D3可以包含在这里引用的AMD中)).
如果您已经确定可视化工具包是选择javascript框架的驱动力而不是相反的方式,那么以下是关于GFX与D3的一些想法:
社区支持:更多人正在开发并提出有关D3的问题.看看github手表/星星/叉子,D3以1.9k/22.7k/4.7k超过GFX的 54/52/91(dojox是GFX的父模块).在stackoverflow上,与GFX 26 相比,D3有近7k个标签.
特点: GFX可以使用SVG,VML,canvas,甚至silverlight进行渲染.通过这种方式,GFX具有出色的跨平台,浏览器和版本支持.除此之外,两个可视化工具包都享有与声明性地编写可视化时获得的每个功能相同的访问权限.
学习曲线:两个工具包都是非常低级的API,学习起来很复杂.对于那些不熟悉广泛方法链接的人来说,D3的enter-update-exit模式可能特别令人困惑.
框架:这两个可视化工具包都用于更大的图表框架.Dojo Charting使用GFX ,许多人使用D3,包括NVD3,D3plus和Vega等等.