A Simple Charting Library for Java
XChart is a light-weight and convenient library for plotting data.
Its focus is on simplicity and ease-of-use, requiring only two lines of code to save or display a basic default chart.
Usage is very simple: Create a Chart instance, add a series of data to it, and either save it or display it.
double[] xData = new double[] { 0.0, 1.0, 2.0 };
double[] yData = new double[] { 2.0, 1.0, 0.0 };
// Create Chart
Chart chart = QuickChart.getChart("Sample Chart", "X", "Y", "y(x)", xData, yData);
// Show it
new SwingWrapper(chart).displayChart();
// Save it
BitmapEncoder.savePNG(chart, "./Sample_Chart.png");
// or save it in high-res
BitmapEncoder.savePNGWithDPI(chart, "./Sample_Chart_300_DPI.png", 300);
Now go ahead and study some more examples, download the thing and provide feedback.
- No additional dependencies
- ~100KB Jar
- Line charts
- Scatter charts
- Area charts
- Bar charts
- Error bars
- Logarithmic axes
- Date and category X-Axis
- Multiple series
- Extensive customization
- Themes - XChart, GGPlot2, MATLAB
- Right-click, Save-As...
- User-defined axes range
- Custom legend placement
- CSV import and export
- High resolution chart export
- Real-time charts
Download Jar: http://xeiam.com/xchart_changelog.jsp
The XChart release artifacts are hosted on Maven Central.
Add the XChart library as a dependency to your pom.xml file:
<dependency>
<groupId>com.xeiam.xchart</groupId>
<artifactId>xchart</artifactId>
<version>2.3.0</version>
</dependency>
For snapshots, add the following to your pom.xml file:
<repository>
<id>sonatype-oss-snapshot</id>
<snapshots/>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</repository>
<dependency>
<groupId>com.xeiam</groupId>
<artifactId>xchart</artifactId>
<version>2.3.1-SNAPSHOT</version>
</dependency>
mvn clean package
mvn javadoc:aggregate
mvn license:check
mvn license:format
mvn license:remove
cd /path/to/xchart-demo/jar/
java -cp xchart-demo-2.3.0.jar:xchart-2.3.0.jar com.xeiam.xchart.demo.XChartDemo
Please report any bugs or submit feature requests to XChart's Github issue tracker.
15MvtM8e3bzepmZ5vTe8cHvrEZg6eDzw2w