*
* @return The chart.
*/
private static JFreeChart createChart() {
XYDataset dataset1 = createDataset("Series 1", 100.0, new Minute(),
200);
JFreeChart chart = ChartFactory.createTimeSeriesChart(
"Multiple Axis Demo 3",
"Time of Day",
"Primary Range Axis",
dataset1,
true,
true,
false
);
chart.setBackgroundPaint(Color.white);
chart.setBorderVisible(true);
chart.setBorderPaint(Color.BLACK);
TextTitle subtitle = new TextTitle("Four datasets and four range axes.");
chart.addSubtitle(subtitle);
XYPlot plot = (XYPlot) chart.getPlot();
plot.setOrientation(PlotOrientation.VERTICAL);
plot.setBackgroundPaint(Color.lightGray);
plot.setDomainGridlinePaint(Color.white);
plot.setRangeGridlinePaint(Color.white);
plot.setAxisOffset(new RectangleInsets(5.0, 5.0, 5.0, 5.0));
plot.getRangeAxis().setFixedDimension(15.0);
XYItemRenderer renderer = plot.getRenderer();
renderer.setSeriesPaint(0, Color.black);
// AXIS 2
NumberAxis axis2 = new NumberAxis("Range Axis 2");
axis2.setFixedDimension(10.0);
axis2.setAutoRangeIncludesZero(false);
axis2.setLabelPaint(Color.red);
axis2.setTickLabelPaint(Color.red);
plot.setRangeAxis(1, axis2);
plot.setRangeAxisLocation(1, AxisLocation.BOTTOM_OR_LEFT);
XYDataset dataset2 = createDataset("Series 2", 1000.0, new Minute(),
170);
plot.setDataset(1, dataset2);
plot.mapDatasetToRangeAxis(1, 1);
XYItemRenderer renderer2 = new StandardXYItemRenderer();
renderer2.setSeriesPaint(0, Color.red);
plot.setRenderer(1, renderer2);
// AXIS 3
NumberAxis axis3 = new NumberAxis("Range Axis 3");
axis3.setLabelPaint(Color.blue);
axis3.setTickLabelPaint(Color.blue);
//axis3.setPositiveArrowVisible(true);
plot.setRangeAxis(2, axis3);
XYDataset dataset3 = createDataset("Series 3", 10000.0, new Minute(),
170);
plot.setDataset(2, dataset3);
plot.mapDatasetToRangeAxis(2, 2);
XYItemRenderer renderer3 = new StandardXYItemRenderer();
renderer3.setSeriesPaint(0, Color.blue);
plot.setRenderer(2, renderer3);
// AXIS 4
NumberAxis axis4 = new NumberAxis("Range Axis 4");
axis4.setLabelPaint(Color.green);
axis4.setTickLabelPaint(Color.green);
plot.setRangeAxis(3, axis4);
XYDataset dataset4 = createDataset("Series 4", 25.0, new Minute(), 200);
plot.setDataset(3, dataset4);
plot.mapDatasetToRangeAxis(3, 3);
XYItemRenderer renderer4 = new StandardXYItemRenderer();
renderer4.setSeriesPaint(0, Color.green);