Welcome to GRAL
GRAL is a free Java library for displaying plots (graphs, diagrams, and charts). The acronym GRAL simply stands for GRAphing Library.
At the moment, GRAL is under heavy development but it already provides some basic features:
- Data management classes
- Data processing and filtering (smoothing, rescaling, statistics, histograms)
- Many different plot types: xy/scatter plot, bubble plot, line plot, area plot, bar plot, pie plot, donut plot, box-and-whisker plot, raster plot
- Legends: horizontal and vertical
- Different axis types: linear axes, logarithmic axes, arbitrary number of axes
- Several file formats are supported as data sources or data sinks (CSV, bitmap image data, audio file data)
- Exporting plots in various bitmap and vector file formats (PNG, GIF, JPEG, EPS, PDF, SVG)
- Small footprint (about 300 kilobytes)
Read more about GRAL in the comparison table of Java plotting libraries.
To see examples of GRAL's output visit the plot gallery.
You can browse the latest version of GRAL's API documentation online.
There are several tutorials will teach you how to get started. You can also get small snippets of code for your problem in the list of how-tos. Additionally, the packages contain a bundle of example applications which show how to code with GRAL.
GRAL uses the GNU Lesser General Public License (LGPL v3) so loosely speaking you may use the library for your own application whether commercial or not. Any changes to the library itself however have to be licensed under the GNU LGPL, too.
GRAL is still in an early stage but it is already successfully used in several projects. So far no optimization has been applied but the library should be sufficiently fast for displaying small and medium data sets.
If you want to report issues, bugs, or file feature requests just register with the link on top of this page. If you even like to contribute your own code please send me an email message to <dev [at] erichseifert.de>. You will get an account for the wiki pages and for the GRAL git repository.