有没有人会推荐一个特别的JavaScript图表库——特别是一个根本不使用flash的库?
当前回答
你所需要的就是原始图表
其他回答
我推荐gRaphaël的纯JavaScript图表以及它所构建的纯JavaScript矢量图形库(Raphaël)。
gRaphaël目前支持Firefox 3.0+, Safari 3.0+, Opera 9.5+和Internet Explorer 6.0+。
有越来越多的纯JavaScript图表的开源和商业解决方案不需要Flash。在这个回答中,我将只介绍开源选项。
对于不需要Flash的图像,有两类主要的JavaScript解决方案:
基于画布的,在IE中使用ExplorerCanvas渲染,这反过来依赖于VML 基于标准的浏览器上的SVG,在IE中呈现为VML
这两种方法各有利弊,但对于图表库,我推荐后者,因为它与DOM集成得很好,允许使用DOM操作图表元素,最重要的是设置DOM事件。相比之下,Canvas图表库必须重新发明DOM轮来管理事件。因此,除非您打算构建没有事件处理的静态图形,否则SVG/VML解决方案应该更好。
对于SVG/VML解决方案,有许多选项,包括:
Dojox图表,如果您已经使用了Dojo工具包,那就很好 Raphael-based解决方案
Raphael是一个非常活跃,维护良好,成熟的开源图形库,具有非常好的跨浏览器支持,包括IE 6到8,Firefox, Opera, Safari, Chrome和Konqueror。Raphael不依赖于任何JavaScript框架,因此可以使用Prototype, jQuery, Dojo, Mootools等…
有许多基于拉斐尔的图表库,包括(但不限于):
gRaphael, Raphael图形库的扩展 Ico,具有基于单个函数调用的直观API来创建复杂的图表
披露:我是github上Ico分支之一的开发者。
dojo图表库中有很多活动,最棒的是,我在一个AIR应用程序中使用它也没有问题,非常酷! 例如http://www.sitepen.com/blog/2008/05/27/dojo-charting-event-support-has-landed/
还有另一个基于SVG的javascript库。它被称为Protovis,来自斯坦福可视化小组
它还允许制作漂亮的交互式图形和可视化。
http://vis.stanford.edu/protovis/ex/
尽管它只适用于现代网络浏览器
更新:protovis团队已经迁移到另一个名为d3.js(数据驱动文档)的库,正如他们所说:
Protovis团队现在正在开发一个新的可视化库D3.js,改进了对动画和交互的支持。D3建立在Protovis的许多概念之上。”
新库现在可以在以下地址找到:
http://mbostock.github.com/d3/
更新2:
“Rickshaw”是一个用于创建交互式时间序列图的JavaScript工具包。基于d3.js,这大大简化了d3.js的工作,尽管功能有点不强大。
http://code.shutterstock.com/rickshaw/
我可以推荐arcadicharts。一个全新的专业的JavaScript和GWT图表库。在没有插件的所有浏览器中运行。简单和快速使用:创建伟大的外观图表,只需几行代码。 免费用于非商业用途。