混合服务器端Java和客户端JavaScript图表库?

| 是否有一个库可以用Java和Javascript为相同的数据生成相同的图表? 我的任务是: 在浏览器中显示一些动态的动态图表,更好地使用动态工具提示,缩放等(我在这里考虑使用Javascript) 并在Java中在服务器端生成相同(或足够相似)的图表,以通过电子邮件自动发送它们(在这种情况下完全没有浏览器)。 我想避免Flash用于iPhone的互操作性。 有一些静态服务器端图表,例如Eastwood / JFreeChart,但我想使其在浏览器中更生动。 是的,我可以通过Ajax重新加载静态图像。还有其他选择吗?     
已邀请:
为什么这个问题已经一年多了却没有答案?!我建议采用一种相当可疑且有点固执的方法。 使用JavaScript,太棒了! 这是您的成功公式:
d3.js
+
jsdom
+
Rhino
+
Batik
特别: 使用一些精美的JavaScript库(例如d3.js)生成图形。 使用jsdom在服务器端运行d3。 Jsdom是纯JS库,并且已知d3正在其上工作。 在Rhino内运行jsdom和d3-自1.6开始,JavaScript引擎就已经移植到您心爱的JVM中(是的,JSR-223!)。虽然,我建议您将其更新到最新版本(在Maven Central上,整洁!)。我猜想Node.JS可以做得更好,但是我认为您对Java不满意。 另请注意,有一个较旧,更成熟且特定于Rhino的服务器端DOM实现-EnvJs(需要Rhino 1.7R2,而不是R3)。如果jsdom不适合您,则可以尝试一下。 使用蜡染栅格化由d3生成的SVG。蜡染甚至支持通过Rhino在SVG内部编写脚本。这意味着您可以根据需要在服务器端生成交互式图表。我还在实践中使用了它,并在此方面有丰富的经验。 已知整个方法都可以在服务器端使用Node.JS作为JS引擎,并使用ImageMagick作为光栅化器,但是我看不出为什么它也不适合您。 顺便说一句,如果您让它全部运行,请告诉我。     
请原谅真的很晚,但是使用Highcharts怎么样?我正在寻找的链接会在您输入此内容时为您提供更多信息,但是Highcharts提供了服务器端的“导出”功能。它的主要作用是使您无需实际使用浏览器即可下载图像的副本。 我实现了此功能,以便可以接受请求参数,查询数据存储,使用Highcharts将这些数字绘制到所需的图形并将这些结果嵌入到电子邮件中(当然,还可以将电子邮件发送给收件人)。 此处的更多信息:http://www.highcharts.com/component/content/article/2-articles/news/52-serverside-generation-charts 和 此处:https://github.com/one2team/highcharts-serverside-export     

要回复问题请先登录注册