有没有像样的免费Java数据绘图库?

时间:2020-03-05 18:38:43  来源:igfitidea点击:

在最近的Java项目中,我们需要一个免费的基于Java的实时数据绘图实用程序。经过大量搜索,我们发现此工具称为NOAA的科学图形工具包或者SGT。它似乎很健壮,但是我们发现它不是非常可配置的。或者至少没有足够的可配置性来满足我们的需求。我们最终非常深入地研究了Java代码,并对代码进行了逆向工程,并对其进行了全面更改,以使绘图工具以我们希望其外观和行为的方式进行外观和行为。当然,这扼杀了NOAA未来升级的任何机会。

那么,我们使用哪些免费或者廉价的基于Java的数据绘图工具或者库?

后续:感谢我们对JFreeChart的建议。我检查了他们的网站,它看起来像是一个非常不错的数据图表和绘图工具。我应该在最初的问题中明确指出,我正在专门绘制实时数据。我在上面纠正了我的问题,以阐明这一点。不过,似乎JFreeChart对实时数据的支持至多是微不足道的。还有其他建议吗?

解决方案

回答

我在先前的项目中使用了JFreeChart(http://www.jfree.org/jfreechart/)。它具有一些非常好的内置功能,并且该设计是可扩展的,因此如果我们需要一些自定义图表注释或者希望以不同的方式渲染轴,则可以随时滚动自己的扩展名。绝对值得一试。

回答

我已经在多个项目上成功使用JFreeChart。这是非常可配置的。 JFreeChart是开源的,但它们会收取开发人员指南的费用。如果我们做的很简单,那么示例代码可能就足够了。否则,为开发人员指南支付50美元是很划算的。

关于"实时"数据,我还将JFreeChart用于此类应用程序。不幸的是,我不得不使用适当的同步机制来创建一些自定义数据模型,以避免出现竞争情况。但是,这并不困难,并且JFreeChart仍然是我的首选。但是,正如FAQ所建议的那样,如果这是一个大问题,JFreeChart可能不会为我们提供最佳性能。

回答

我在一个相当复杂的应用程序中使用了JFreeChart,该应用程序需要可视化数据流和基于数据的计算。我们实现了用鼠标直观地编辑数据图的功能,并且具有非常大的数据点集。 JFreeChart处理得很好。

不幸的是,我坚持使用v0.7,但是最新的版本在API清晰度方面要好得多。社区非常有帮助,开发人员也响应邮件。

如果我们正在使用Web应用程序,并且不想打扰图书馆,则可以检查Google Chart API。我自己没有使用它,但是我开始了一些很有希望的测试。

回答

检查ILOG的JViews,其中有很多东西,可能满足需求。所有这些都是非常可配置的,而且速度很快。虽然不是免费的。

回答

对于实时绘图,我们可以使用QN Plot,JOpenChart或者其分支Openchart2.

回答

JHandles是Octave的替代图形包(数学包)。可能值得研究,但是特定于八度音可能没有我们需要的东西。

-亚当

回答

Live Graph支持实时渲染。

回答

我只是遇到了类似的问题(出于工程目的显示快速更新的数据),并且我正在使用JChart2D。它非常简约,有一些怪癖,但看起来却相当快:我正在运行基准速度测试,该测试将条形图每秒增加2331点(333x7迹),并在3GHz Pentium 4上使用1%的CPU。

回答

我们可能想查看JMathPlot

回答

Plot4j还支持实时绘图!

回答

我正在使用GRAL进行实时绘图。这是一个LGPL Java库。尽管它不如JFreeChart强大,但它具有更好的API。我在很短的时间内就完成了一个计划。他们还提供了一个实时绘图示例。

回答

点图
可能是一个不错的选择。以前称为托勒密。