有没有类似于d3.js(SVG库)的Canvas库?我有一个网站这里,并使用SVG元素编写了一个图表,但在智能手机浏览器上效率不高,速度非常慢。现在,我想将其更改为2D Canvas类型,并查看它是否更好。您可以建议一个适用于此目的的Canvas库吗?
谢谢...
有没有类似于d3.js(SVG库)的Canvas库?我有一个网站这里,并使用SVG元素编写了一个图表,但在智能手机浏览器上效率不高,速度非常慢。现在,我想将其更改为2D Canvas类型,并查看它是否更好。您可以建议一个适用于此目的的Canvas库吗?
谢谢...
D3并不一定是仅限于svg的库 - 在许多情况下会使用svg,但该库可以制作任何你想要的类型的表现形式。您可以查看Kai Chang使用D3中的画布绘制平行坐标的示例:http://bl.ocks.org/2409451
此外,还可以在这里找到有关性能问题等方面的讨论,可能会有所帮助:https://groups.google.com/d/topic/d3-js/mtlTsGCULVQ/discussion
该博客文章链接了一个交互式演示文稿,让您可以使用各种技术并查看它们的优缺点。当然,该演示主要比较了该特定库中使用的三种技术,因此您的结果可能会有所不同,但他们花费了很多时间优化该库中的三种技术,因此我认为结果不会太有偏见。
免责声明:我在创建上述库的公司工作,但我在SO上不代表我的雇主。我认为我说的话不仅适用于那个库。
对于三星奥林匹克基因组项目Facebook应用,我们使用了http://thejit.org来制作应用中力导向图样式的动画。当然,它经过了我和我的团队成员的大幅修改,并且只在应用中起到了很小的作用,但它确实是一个非常强大的框架。
请看使用HTML5画布渲染的Cytoscape.JS。目前该项目仍处于起步阶段,但其前景看好。根据其维基百科,该库支持桌面和移动浏览器:
Cytoscape.js容易集成到您的Web应用程序中,尤其是因为它支持桌面浏览器(如Chrome)和移动浏览器(例如iPad)。
Chart.js是一个使用HTML5进行渲染的JavaScript库,用于创建图表。虽然它没有D3那么多功能,但它正在努力成为未来的完美替代品。http://www.chartjs.org/