XYPLot example

A discussion forum for JFreeChart (a 2D chart library for the Java platform).
Locked
Marty

XYPLot example

Post by Marty » Mon Sep 23, 2002 2:51 pm

Hi

I just intalled FreeChart and was hopping some one could give me a quick example so I can text to see if my intall works. Just a quick XYplot example would be great thanks

Martin

David Gilbert

Re: XYPLot example

Post by David Gilbert » Mon Sep 23, 2002 5:29 pm

Hi Martin,

There's a stack of examples in the src/com/jrefinery/chart/demo directory.

Regards,

DG.

Ted Hill

Re: XYPLot example

Post by Ted Hill » Tue Sep 24, 2002 9:18 pm

Marty,

Here's a simple example of an XYPlot
=====================================
package charts;

import javax.swing.JFrame;
import javax.swing.JPanel;
import java.awt.BorderLayout;
import java.awt.Paint;
import java.awt.Color;
import java.awt.BasicStroke;
import com.jrefinery.data.XYSeries;
import com.jrefinery.data.XYSeriesCollection;
import com.jrefinery.chart.JFreeChart;
import com.jrefinery.chart.ChartFactory;
import com.jrefinery.chart.ChartPanel;
import com.jrefinery.chart.XYPlot;
import com.jrefinery.chart.NumberAxis;
import com.jrefinery.chart.TickUnits;
import com.jrefinery.chart.ValueAxis;
import com.jrefinery.chart.Marker;

public class ChartOne extends JPanel
{
public ChartOne()
{
super();

// create a dataset...
XYSeries series1 = new XYSeries("Planned");
series1.add(1.0, 1.0);
series1.add(2.0, 4.0);
series1.add(3.0, -3.0);
series1.add(4.0, 5.0);
series1.add(5.0, 5.0);
series1.add(6.0, 7.0);
series1.add(7.0, 7.0);
series1.add(8.0, 8.0);

XYSeries series2 = new XYSeries("Delivered");
series2.add(1.0, 5.0);
series2.add(2.0, 7.0);
series2.add(3.0, 6.0);
series2.add(4.0, 8.0);
series2.add(5.0, -4.0);
series2.add(6.0, 4.0);
series2.add(7.0, 2.0);
series2.add(8.0, 1.0);

XYSeries series3 = new XYSeries("Third");
series3.add(3.0, 4.0);
series3.add(4.0, 3.0);
series3.add(5.0, 2.0);
series3.add(6.0, -3.0);
series3.add(7.0, 6.0);
series3.add(8.0, 3.0);
series3.add(9.0, -4.0);
series3.add(10.0, 3.0);

XYSeriesCollection dataset = new XYSeriesCollection();
dataset.addSeries(series1);
dataset.addSeries(series2);
dataset.addSeries(series3);

JFreeChart chart = ChartFactory.createXYChart(
"Line Chart Demo",
"X",
"Y",
dataset,
true);

XYPlot plot = (XYPlot)chart.getPlot();
plot.setSeriesPaint(0, Color.cyan);

// draw a horizontal line across the chart at y == 0
plot.addRangeMarker(new Marker(0, Color.red, new BasicStroke(1), Color.red, 1f));

ChartPanel chartPanel = new ChartPanel(chart);

add(chartPanel);
}

public static void main(String[] args)
{
JFrame frame = new JFrame("Chart One");

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.getContentPane().add(new ChartOne(), BorderLayout.CENTER);
frame.pack();
frame.setVisible(true);
}
}

Locked