混合服务器端java和客户端javascript图表库?

Vic*_*nko 5 javascript java charts

是否有一个库可以为Java和Javascript生成相同数据的相同图表?

我的任务是:

  • 在浏览器中显示一些华丽的动态图表,更好地使用动态工具提示,缩放等等(我在想这里的Javascript)
  • 在Java中,在服务器端生成相同(或类似)的图表,以便在电子邮件中自动发送它们(在这种情况下根本没有浏览器).

我想避免Flash for iPhone的互操作性.

有一些静态服务器端图表,如Eastwood/JFreeChart,但我想在浏览器中使它更活跃.

是的我可以通过Ajax重新加载静态图像.还有其他选择吗?

And*_*кин 9

为什么这个问题超过一年但没有得到答案?!我建议一个相当可疑和有点硬核的方法.


使用JavaScript,真棒!

这是你的成功公式: d3.js+jsdom+Rhino+Batik

特别:

  1. 使用像d3.js这样的光滑JavaScript库生成图形.

  2. 使用jsdom运行d3服务器端.Jsdom是纯JS库,已知d3正在处理它.

  3. Rhino中运行jsdom和d3 - 从1.6开始,你的心爱的JVM中引入了一个JavaScript引擎(yay,JSR-223!).虽然,我建议你把它更新到最新版本(它是在Maven Central,整洁!).我猜Node.JS可以做得更好,但我认为你已经坚持使用Java了.

    另请注意,有一个更老,更成熟和特定于Rhino的服务器端DOM实现 - EnvJs (需要Rhino 1.7R2,而不是R3).如果jsdom对你不起作用,你可以尝试一下.

  4. 使用Batik光栅化由d3生成的SVG.Batik甚至支持通过Rhino在SVG内部编写脚本.这意味着您可以根据需要生成服务器端的交互式图表.我也在实践中使用它并且有很好的经验.

已知整个方法服务器端工作,Node.JS作为JS引擎,ImageMagick作为光栅化器,但我认为没有理由为什么它也不适合你.


顺便说一句,如果你能全力以赴,请告诉我.