zq7746 / XChart

XChart is an ultra-light Java library for plotting data.

Home Page:xeiam.com/xchart

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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.saveBitmap(chart, "./Sample_Chart", BitmapFormat.PNG);

    // or save it in high-res
    BitmapEncoder.saveBitmapWithDPI(chart, "./Sample_Chart_300_DPI", BitmapFormat.PNG, 300);

Now go ahead and study some more examples, download the thing and provide feedback.

Features

  • No required additional dependencies
  • ~100KB Jar
  • Line charts
  • Scatter charts
  • Area charts
  • Bar charts
  • Histogram 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
  • Export as PNG, JPG, BMP, GIF and EPS
  • Export SVG and PDF using optional de.erichseifert.vectorgraphics2d library
  • Real-time charts
  • Java 6 and up

Getting Started

Non-Maven

Download Jar: http://xeiam.com/xchart-change-log

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.5.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.5.1-SNAPSHOT</version>
    </dependency>

Snapshots can be manually downloaded from Sonatyope: https://oss.sonatype.org/content/groups/public/com/xeiam/xchart/xchart/

SBT

To use XChart with the Scala Build Tool (SBT) add the following to your build.sbt

libraryDependencies += "com.xeiam.xchart" % "xchart" % "2.5.0" exclude("de.erichseifert.vectorgraphics2d", "VectorGraphics2D") withSources()

(SBT/Ivy does not seem to respect the optional VectorGraphics2D dependency and as it does not exist in Maven Central the build will fail unless it is excluded or available in a local repository.)

Building

general

mvn clean package  
mvn javadoc:aggregate  

Note: in order to add support for SVG and PDF exports the optional VectorGraphics2D has to be downloaded installed locally as it is not available in Maven Central. Make sure to checkout and build the right version!

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.5.0.jar:xchart-2.5.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

1PrZHiJorAw7RQrjP9CJgtPuqr6fU65PKt

Release Information

We will announce new releases on our Twitter page.

About

XChart is an ultra-light Java library for plotting data.

xeiam.com/xchart

License:Apache License 2.0


Languages

Language:Java 100.0%