Are there any decent free Java data plotting libra

2019-01-30 08:24发布

On a recent Java project, we needed a free Java based real-time data plotting utility. After much searching, we found this tool called the Scientific Graphics Toolkit or SGT from NOAA. It seemed pretty robust, but we found out that it wasn't terribly configurable. Or at least not configurable enough to meet our needs. We ended up digging very deeply into the Java code and reverse engineering the code and changing it all around to make the plot tool look and act the way we wanted it to look and act. Of course, this killed any chance for future upgrades from NOAA.

So what free or cheap Java based data plotting tools or libraries do you use?

Followup: Thanks for the JFreeChart suggestions. I checked out their website and it looks like a very nice data charting and plotting utility. I should have made it clear in my original question that I was looking specifically to plot real-time data. I corrected my question above to make that point clear. It appears that JFreeChart support for live data is marginal at best, though. Any other suggestions out there?

16条回答
\"骚年 ilove
2楼-- · 2019-01-30 08:38

You might want to check out JMathPlot

查看更多
Summer. ? 凉城
3楼-- · 2019-01-30 08:39

PtPlot may be a good choice. Formerly called Ptolemy.

查看更多
爱情/是我丢掉的垃圾
4楼-- · 2019-01-30 08:42

I've had success using JFreeChart on multiple projects. It is very configurable. JFreeChart is open source, but they charge for the developer guide. If you're doing something simple, the sample code is probably good enough. Otherwise, $50 for the developer guide is a pretty good bargain.

With respect to "real-time" data, I've also used JFreeChart for these sorts of applications. Unfortunately, I had to create some custom data models with appropriate synchronization mechanisms to avoid race conditions. However, it wasn't terribly difficult and JFreeChart would still be my first choice. However, as the FAQ suggests, JFreeChart might not give you the best performance if that is a big concern.

查看更多
你好瞎i
5楼-- · 2019-01-30 08:46

http://autoplot.org/ allows for real-time updates and can be used to create many types of scientific plots.

To update the plot, specify the URL to a data file and then append &filePollUpdates=1&tail=100. See the example at http://autoplot.org/cookbook#Loading_Data

查看更多
Root(大扎)
6楼-- · 2019-01-30 08:46

I just ran into a similar issue (displaying fast-updating data for engineering purposes), and I'm using JChart2D. It's pretty minimalist and has a few quirks but it seems fairly fast: I'm running a benchmark speed test where it's adding 2331 points per second (333x7 traces) to a strip chart and uses 1% of the CPU on my 3GHz Pentium 4.

查看更多
贪生不怕死
7楼-- · 2019-01-30 08:49

Waterloo Scientific Graphics is a new LGPL project. Data objects are observable and could be updated in a real time plotting scenario. For details see http://waterloo.sourceforge.net/

A few screenshots:

http://waterloo.sourceforge.net/images/AnatomyZ.png

http://waterloo.sourceforge.net/images/contour.png

http://waterloo.sourceforge.net/images/errorbar.png

查看更多
登录 后发表回答