微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery – Crossbrowser图表库

我正在尝试找到一个jQuery图表库,用于绘制Web应用程序中逆变器的测量值,这些测量值能够在各种具有正确性能的浏览器上运行.

到目前为止,我找到了jqPlot,jqChart,gRaphaël和HighCharts.他们在FF和Chrome中表现不错,但在IE中却很慢.

使用jqChart,绘制4,000个点需要:

Firefox 7> 0.461秒
>谷歌Chrome 14> 0.222秒
> Internet Explorer 8的3.440秒
Internet Explorer 6> 3.994秒

使用jqPlot,000个点需要:

Firefox 7为0.885秒
谷歌Chrome 14> 0.930秒
> Internet Explorer 8的33.779秒
> Internet Explorer 6的34.666秒

我想找到一个在所有浏览器中都有良好性能解决方案并避免使用Flash,你知道吗?

解决方法

我想你在这里正在打一场失败的战斗.

IE8及更早版本不提供所有图表库所基于的SVG或Canvas.

它确实提供了VML,类似于SVG.几乎所有在旧版IE中都可用的库都使用它,因为它只是浏览器上唯一可用的绘图API.

为了做到这一点,他们必须从他们的原生绘图API(即SVG或Canvas)到VML进行转换过程.说实话,它们在IE8中工作是奇迹般的(并且有许多类似的库已经决定不支持IE8).

由于SVG和VML相对类似,基于SVG的库可能会更快.将Canvas转换为VML总是会变得非常缓慢.

在一天结束时,IE确实有其局限性,速度是主要的. IE8的javascript引擎比任何其他浏览器慢几个数量级. IE的VML比其他浏览器的SVG慢.这是一个双重打击,只是通过格式转换变得更糟.

在IE中运行速度最快的库是Raphael,因为它从一开始就被编写为生成SVG或VML,所以它永远不需要进行任何转换.但与其他浏览器相比,它对IE的普遍缓慢仍无能为力.

唯一的另一种选择是放弃HTML5的东西,并使用Flash.有几个基于Flash的图表库可以为您完成这项工作,并且在所有浏览器中的工作速度几乎相同.不过,这有点落后.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐