简单的Java绘图API用于vadin Web应用程序



我有一个简单的vadin Web应用程序,我正在寻找一个简单的绘图API,只需要处理最少量的数据(最多几百个数据点),并允许我在vadin面板对象中显示简单的2d图形。

由于安全原因,我需要它是一个Java API,而不是像谷歌图表这样的外部服务。

谁有好的建议?

编辑:我选择使用Invient Charts(用于HighCharts的Vaadin附加包装器),因为我已经拥有HighCharts许可证。如果我没有许可证,我可能会使用一个简单的基于GWT的API,比如gchart

编辑3/29/2012:推出了一个使用Invient Charts的Vaadin App的生产构建。对最终结果非常满意。您可以用纯Java代码控制High Charts功能的几乎所有方面。有几件事有点"粗糙",比如格式化点的显示方式,鼠标悬停在数据点上,你需要将匿名javascript函数作为字符串传递。初始设置也有点冒险;我必须重写我的ApplicationServlet,以确保javascript库被正确导入,并且将它们置于项目结构中的正确位置没有完整的文档记录。总的来说,将图表集成到我的Vaadin应用程序中相对轻松,强烈推荐。

JFreeChart应该可以做到:http://www.jfree.org/jfreechart/。这是我使用过的唯一一个图表包,所以我不能给你任何反馈,比如它与其他的相比如何,但我知道Java开发人员非常广泛地使用它——我相信它是所有免费图表包中使用最多的——而且它通常受到很高的尊重。JFreeChart还拥有LGPL许可证,这意味着它可以用于专有/商业软件,而具有GPL许可证的软件可以免费使用,但不能作为任何商业产品的一部分分发。不知道这和这里是否相关但也许有帮助

Invient Charts插件确实很酷,但是如果您想在生产中使用它,作为您的商业应用程序的一部分,您应该为它购买许可证。我正在使用这个插件(它有LGPL 3.0许可),因为它的功能比Invient Charts少,但对于我的需要来说已经足够了。这个插件的一大优点是"没有互联网连接"需要生成字符,而不是使用谷歌API生成图表的其他图表插件。

如果JFreeChart不能做到这一点,那就试试Invient Charts。它使用Highcharts JavaScript库,商业使用需要许可。它看起来很漂亮,很容易用于创建图表。

最新更新