/XChart

A Simple Charting Library for Java

Primary LanguageJavaApache License 2.0Apache-2.0

XChart XChart

A Simple Charting Library for Java

Description

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.

Example

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.

Features

  • 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

Getting Started

Non-Maven

Download Jar: http://xeiam.com/xchart_changelog.jsp

Maven

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>

Building

general

mvn clean package  
mvn javadoc:aggregate  

maven-license-plugin

mvn license:check
mvn license:format
mvn license:remove

Running Demo

cd /path/to/xchart-demo/jar/
java -cp xchart-demo-2.3.0.jar:xchart-2.3.0.jar com.xeiam.xchart.demo.XChartDemo

Bugs

Please report any bugs or submit feature requests to XChart's Github issue tracker.

Continuous Integration

Build Status
Build History

Donations

15MvtM8e3bzepmZ5vTe8cHvrEZg6eDzw2w