org.jfree.chart.demo.XYBoxAnnotationDemo1.java Source code

Java tutorial

Introduction

Here is the source code for org.jfree.chart.demo.XYBoxAnnotationDemo1.java

Source

package org.jfree.chart.demo;

import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Rectangle;
import java.text.SimpleDateFormat;

import javax.swing.JPanel;

import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartPanel;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.annotations.XYBoxAnnotation;
import org.jfree.chart.axis.DateAxis;
import org.jfree.chart.axis.DateTickUnit;
import org.jfree.chart.axis.DateTickUnitType;
import org.jfree.chart.axis.NumberAxis;
import org.jfree.chart.axis.NumberTickUnit;
import org.jfree.chart.plot.XYPlot;
import org.jfree.chart.renderer.xy.XYLineAndShapeRenderer;
import org.jfree.data.time.Day;
import org.jfree.data.xy.XYDataset;
import org.jfree.data.xy.XYSeries;
import org.jfree.data.xy.XYSeriesCollection;
import org.jfree.ui.ApplicationFrame;
import org.jfree.ui.RefineryUtilities;

public class XYBoxAnnotationDemo1 extends ApplicationFrame {

    private static final long serialVersionUID = 1L;

    public XYBoxAnnotationDemo1(String s) {
        super(s);
        JPanel jpanel = createDemoPanel();
        jpanel.setPreferredSize(new Dimension(500, 270));
        setContentPane(jpanel);
    }

    public static XYDataset createDataset() {
        XYSeries xyseries = new XYSeries("Old", false, true);
        XYSeries xyseries1 = new XYSeries("New", false, true);
        xyseries.add((new Day(6, 11, 2003)).getMiddleMillisecond(), 617D);
        xyseries.add((new Day(7, 11, 2003)).getMiddleMillisecond(), 3065D);
        xyseries.add((new Day(14, 11, 2003)).getMiddleMillisecond(), 1964D);
        xyseries.add((new Day(17, 12, 2003)).getMiddleMillisecond(), 204D);
        xyseries.add((new Day(13, 11, 2003)).getMiddleMillisecond(), 10320D);
        xyseries.add((new Day(5, 11, 2003)).getMiddleMillisecond(), 17892D);
        xyseries.add((new Day(11, 12, 2003)).getMiddleMillisecond(), 4269D);
        xyseries.add((new Day(12, 12, 2003)).getMiddleMillisecond(), 48D);
        xyseries.add((new Day(19, 12, 2003)).getMiddleMillisecond(), 7335D);
        xyseries.add((new Day(6, 11, 2003)).getMiddleMillisecond(), 30887D);
        xyseries.add((new Day(8, 12, 2003)).getMiddleMillisecond(), 7767D);
        xyseries.add((new Day(29, 11, 2003)).getMiddleMillisecond(), 11701D);
        xyseries.add((new Day(7, 11, 2003)).getMiddleMillisecond(), 2202D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 233D);
        xyseries.add((new Day(20, 1, 2004)).getMiddleMillisecond(), 8572D);
        xyseries.add((new Day(26, 11, 2003)).getMiddleMillisecond(), 16607D);
        xyseries.add((new Day(20, 11, 2003)).getMiddleMillisecond(), 5945D);
        xyseries.add((new Day(16, 1, 2004)).getMiddleMillisecond(), 1322D);
        xyseries.add((new Day(12, 1, 2004)).getMiddleMillisecond(), 6600D);
        xyseries.add((new Day(27, 11, 2003)).getMiddleMillisecond(), 19080D);
        xyseries.add((new Day(5, 11, 2003)).getMiddleMillisecond(), 39000D);
        xyseries.add((new Day(25, 11, 2003)).getMiddleMillisecond(), 28871D);
        xyseries.add((new Day(4, 2, 2004)).getMiddleMillisecond(), 1387D);
        xyseries.add((new Day(19, 1, 2004)).getMiddleMillisecond(), 1750D);
        xyseries.add((new Day(10, 12, 2003)).getMiddleMillisecond(), 340D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 1100D);
        xyseries.add((new Day(11, 2, 2004)).getMiddleMillisecond(), 1586D);
        xyseries.add((new Day(23, 1, 2004)).getMiddleMillisecond(), 482D);
        xyseries.add((new Day(20, 2, 2004)).getMiddleMillisecond(), 1520D);
        xyseries.add((new Day(19, 1, 2004)).getMiddleMillisecond(), 213D);
        xyseries.add((new Day(8, 12, 2003)).getMiddleMillisecond(), 7398D);
        xyseries.add((new Day(24, 1, 2004)).getMiddleMillisecond(), 2903D);
        xyseries.add((new Day(14, 2, 2004)).getMiddleMillisecond(), 724D);
        xyseries.add((new Day(3, 11, 2003)).getMiddleMillisecond(), 58936D);
        xyseries.add((new Day(7, 11, 2003)).getMiddleMillisecond(), 24494D);
        xyseries.add((new Day(25, 1, 2004)).getMiddleMillisecond(), 994D);
        xyseries.add((new Day(15, 1, 2004)).getMiddleMillisecond(), 6610D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 1081D);
        xyseries.add((new Day(22, 1, 2004)).getMiddleMillisecond(), 4350D);
        xyseries.add((new Day(27, 11, 2003)).getMiddleMillisecond(), 45009D);
        xyseries.add((new Day(3, 11, 2003)).getMiddleMillisecond(), 23746D);
        xyseries.add((new Day(25, 11, 2003)).getMiddleMillisecond(), 3082D);
        xyseries.add((new Day(24, 1, 2004)).getMiddleMillisecond(), 12425D);
        xyseries.add((new Day(4, 12, 2003)).getMiddleMillisecond(), 90D);
        xyseries.add((new Day(7, 11, 2003)).getMiddleMillisecond(), 6500D);
        xyseries.add((new Day(2, 12, 2003)).getMiddleMillisecond(), 36350D);
        xyseries.add((new Day(10, 2, 2004)).getMiddleMillisecond(), 7983D);
        xyseries.add((new Day(16, 1, 2004)).getMiddleMillisecond(), 7250D);
        xyseries.add((new Day(10, 2, 2004)).getMiddleMillisecond(), 4881D);
        xyseries.add((new Day(25, 2, 2004)).getMiddleMillisecond(), 6616D);
        xyseries.add((new Day(20, 1, 2004)).getMiddleMillisecond(), 4700D);
        xyseries.add((new Day(12, 12, 2003)).getMiddleMillisecond(), 47317D);
        xyseries.add((new Day(24, 3, 2004)).getMiddleMillisecond(), 314D);
        xyseries.add((new Day(4, 12, 2003)).getMiddleMillisecond(), 20885D);
        xyseries.add((new Day(7, 1, 2004)).getMiddleMillisecond(), 13477D);
        xyseries.add((new Day(19, 1, 2004)).getMiddleMillisecond(), 23527D);
        xyseries.add((new Day(26, 1, 2004)).getMiddleMillisecond(), 22224D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 17467D);
        xyseries.add((new Day(20, 2, 2004)).getMiddleMillisecond(), 5474D);
        xyseries.add((new Day(18, 11, 2003)).getMiddleMillisecond(), 14897D);
        xyseries.add((new Day(9, 1, 2004)).getMiddleMillisecond(), 2459D);
        xyseries.add((new Day(20, 2, 2004)).getMiddleMillisecond(), 5712D);
        xyseries.add((new Day(13, 3, 2004)).getMiddleMillisecond(), 1796D);
        xyseries.add((new Day(6, 4, 2004)).getMiddleMillisecond(), 258D);
        xyseries.add((new Day(31, 1, 2004)).getMiddleMillisecond(), 19701D);
        xyseries.add((new Day(3, 2, 2004)).getMiddleMillisecond(), 5936D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 22601D);
        xyseries.add((new Day(8, 4, 2004)).getMiddleMillisecond(), 1977D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 17801D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 17321D);
        xyseries.add((new Day(6, 2, 2004)).getMiddleMillisecond(), 17261D);
        xyseries.add((new Day(2, 4, 2004)).getMiddleMillisecond(), 3091D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 17901D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 14236D);
        xyseries.add((new Day(4, 2, 2004)).getMiddleMillisecond(), 18601D);
        xyseries.add((new Day(7, 2, 2004)).getMiddleMillisecond(), 18901D);
        xyseries.add((new Day(9, 2, 2004)).getMiddleMillisecond(), 18722D);
        xyseries.add((new Day(4, 3, 2004)).getMiddleMillisecond(), 8812D);
        xyseries.add((new Day(18, 11, 2003)).getMiddleMillisecond(), 42080D);
        xyseries.add((new Day(8, 3, 2004)).getMiddleMillisecond(), 8988D);
        xyseries.add((new Day(15, 3, 2004)).getMiddleMillisecond(), 654D);
        xyseries.add((new Day(25, 3, 2004)).getMiddleMillisecond(), 704D);
        xyseries.add((new Day(24, 1, 2004)).getMiddleMillisecond(), 267D);
        xyseries.add((new Day(1, 3, 2004)).getMiddleMillisecond(), 770D);
        xyseries.add((new Day(16, 2, 2004)).getMiddleMillisecond(), 19855D);
        xyseries.add((new Day(15, 12, 2003)).getMiddleMillisecond(), 40548D);
        xyseries.add((new Day(21, 2, 2004)).getMiddleMillisecond(), 23701D);
        xyseries.add((new Day(19, 11, 2003)).getMiddleMillisecond(), 2604D);
        xyseries.add((new Day(26, 1, 2004)).getMiddleMillisecond(), 31154D);
        xyseries.add((new Day(11, 2, 2004)).getMiddleMillisecond(), 21423D);
        xyseries.add((new Day(10, 12, 2003)).getMiddleMillisecond(), 22132D);
        xyseries.add((new Day(22, 4, 2004)).getMiddleMillisecond(), 5423D);
        xyseries.add((new Day(19, 11, 2003)).getMiddleMillisecond(), 2626D);
        xyseries.add((new Day(2, 3, 2004)).getMiddleMillisecond(), 6700D);
        xyseries.add((new Day(14, 1, 2004)).getMiddleMillisecond(), 332D);
        xyseries.add((new Day(5, 4, 2004)).getMiddleMillisecond(), 4980D);
        xyseries.add((new Day(31, 1, 2004)).getMiddleMillisecond(), 22655D);
        xyseries.add((new Day(9, 2, 2004)).getMiddleMillisecond(), 26510D);
        xyseries.add((new Day(27, 11, 2003)).getMiddleMillisecond(), 44228D);
        xyseries.add((new Day(4, 3, 2004)).getMiddleMillisecond(), 2406D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 34801D);
        xyseries.add((new Day(13, 2, 2004)).getMiddleMillisecond(), 13332D);
        xyseries.add((new Day(19, 4, 2004)).getMiddleMillisecond(), 2722D);
        xyseries.add((new Day(18, 2, 2004)).getMiddleMillisecond(), 31212D);
        xyseries.add((new Day(4, 3, 2004)).getMiddleMillisecond(), 17351D);
        xyseries.add((new Day(15, 3, 2004)).getMiddleMillisecond(), 12784D);
        xyseries.add((new Day(5, 12, 2003)).getMiddleMillisecond(), 24157D);
        xyseries.add((new Day(12, 3, 2004)).getMiddleMillisecond(), 1053D);
        xyseries.add((new Day(18, 12, 2003)).getMiddleMillisecond(), 56533D);
        xyseries.add((new Day(19, 12, 2003)).getMiddleMillisecond(), 38394D);
        xyseries.add((new Day(19, 12, 2003)).getMiddleMillisecond(), 21997D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 31113D);
        xyseries.add((new Day(17, 12, 2003)).getMiddleMillisecond(), 54535D);
        xyseries.add((new Day(8, 3, 2004)).getMiddleMillisecond(), 17451D);
        xyseries.add((new Day(8, 3, 2004)).getMiddleMillisecond(), 17451D);
        xyseries.add((new Day(4, 2, 2004)).getMiddleMillisecond(), 1070D);
        xyseries.add((new Day(4, 11, 2003)).getMiddleMillisecond(), 14501D);
        xyseries.add((new Day(4, 2, 2004)).getMiddleMillisecond(), 11119D);
        xyseries.add((new Day(19, 4, 2004)).getMiddleMillisecond(), 2059D);
        xyseries.add((new Day(16, 1, 2004)).getMiddleMillisecond(), 12268D);
        xyseries.add((new Day(22, 12, 2003)).getMiddleMillisecond(), 44210D);
        xyseries.add((new Day(7, 11, 2003)).getMiddleMillisecond(), 1240D);
        xyseries.add((new Day(10, 2, 2004)).getMiddleMillisecond(), 32734D);
        xyseries.add((new Day(19, 12, 2003)).getMiddleMillisecond(), 85800D);
        xyseries.add((new Day(18, 11, 2003)).getMiddleMillisecond(), 21576D);
        xyseries.add((new Day(24, 5, 2004)).getMiddleMillisecond(), 3978D);
        xyseries.add((new Day(13, 1, 2004)).getMiddleMillisecond(), 4526D);
        xyseries.add((new Day(8, 3, 2004)).getMiddleMillisecond(), 12463D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 48991D);
        xyseries.add((new Day(15, 12, 2003)).getMiddleMillisecond(), 72193D);
        xyseries.add((new Day(4, 12, 2003)).getMiddleMillisecond(), 89024D);
        xyseries.add((new Day(6, 5, 2004)).getMiddleMillisecond(), 2001D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 30610D);
        xyseries.add((new Day(4, 3, 2004)).getMiddleMillisecond(), 246D);
        xyseries.add((new Day(27, 11, 2003)).getMiddleMillisecond(), 63135D);
        xyseries.add((new Day(1, 3, 2004)).getMiddleMillisecond(), 38865D);
        xyseries.add((new Day(3, 5, 2004)).getMiddleMillisecond(), 389D);
        xyseries.add((new Day(28, 4, 2004)).getMiddleMillisecond(), 3723D);
        xyseries.add((new Day(10, 12, 2003)).getMiddleMillisecond(), 58745D);
        xyseries.add((new Day(18, 5, 2004)).getMiddleMillisecond(), 2635D);
        xyseries.add((new Day(11, 3, 2004)).getMiddleMillisecond(), 348D);
        xyseries.add((new Day(31, 3, 2004)).getMiddleMillisecond(), 5085D);
        xyseries.add((new Day(2, 2, 2004)).getMiddleMillisecond(), 40608D);
        xyseries.add((new Day(25, 2, 2004)).getMiddleMillisecond(), 9864D);
        xyseries.add((new Day(6, 5, 2004)).getMiddleMillisecond(), 20239D);
        xyseries.add((new Day(14, 6, 2004)).getMiddleMillisecond(), 280D);
        xyseries.add((new Day(28, 4, 2004)).getMiddleMillisecond(), 14873D);
        xyseries.add((new Day(16, 12, 2003)).getMiddleMillisecond(), 30845D);
        xyseries.add((new Day(19, 5, 2004)).getMiddleMillisecond(), 729D);
        xyseries.add((new Day(29, 1, 2004)).getMiddleMillisecond(), 983D);
        xyseries.add((new Day(8, 4, 2004)).getMiddleMillisecond(), 619D);
        xyseries.add((new Day(4, 11, 2003)).getMiddleMillisecond(), 18037D);
        xyseries.add((new Day(2, 12, 2003)).getMiddleMillisecond(), 9772D);
        xyseries.add((new Day(15, 1, 2004)).getMiddleMillisecond(), 125837D);
        xyseries.add((new Day(27, 1, 2004)).getMiddleMillisecond(), 84704D);
        xyseries.add((new Day(27, 1, 2004)).getMiddleMillisecond(), 10400D);
        xyseries.add((new Day(18, 5, 2004)).getMiddleMillisecond(), 16425D);
        xyseries.add((new Day(6, 4, 2004)).getMiddleMillisecond(), 30D);
        xyseries.add((new Day(27, 2, 2004)).getMiddleMillisecond(), 104978D);
        xyseries.add((new Day(5, 3, 2004)).getMiddleMillisecond(), 17359D);
        xyseries.add((new Day(7, 4, 2004)).getMiddleMillisecond(), 55074D);
        xyseries.add((new Day(19, 12, 2003)).getMiddleMillisecond(), 55630D);
        xyseries.add((new Day(10, 12, 2003)).getMiddleMillisecond(), 47055D);
        xyseries.add((new Day(8, 3, 2004)).getMiddleMillisecond(), 16900D);
        xyseries.add((new Day(26, 1, 2004)).getMiddleMillisecond(), 34819D);
        xyseries.add((new Day(21, 6, 2004)).getMiddleMillisecond(), 514D);
        xyseries.add((new Day(28, 5, 2004)).getMiddleMillisecond(), 8195D);
        xyseries.add((new Day(20, 3, 2004)).getMiddleMillisecond(), 61870D);
        xyseries.add((new Day(13, 3, 2004)).getMiddleMillisecond(), 13000D);
        xyseries.add((new Day(20, 1, 2004)).getMiddleMillisecond(), 43152D);
        xyseries.add((new Day(5, 3, 2004)).getMiddleMillisecond(), 49653D);
        xyseries.add((new Day(25, 1, 2004)).getMiddleMillisecond(), 23311D);
        xyseries.add((new Day(14, 11, 2003)).getMiddleMillisecond(), 40166D);
        xyseries.add((new Day(1, 12, 2003)).getMiddleMillisecond(), 59504D);
        xyseries.add((new Day(15, 1, 2004)).getMiddleMillisecond(), 113349D);
        xyseries.add((new Day(5, 6, 2004)).getMiddleMillisecond(), 32110D);
        xyseries.add((new Day(25, 1, 2004)).getMiddleMillisecond(), 24693D);
        xyseries.add((new Day(25, 2, 2004)).getMiddleMillisecond(), 11668D);
        xyseries.add((new Day(23, 4, 2004)).getMiddleMillisecond(), 651D);
        xyseries.add((new Day(3, 3, 2004)).getMiddleMillisecond(), 24409D);
        xyseries.add((new Day(11, 3, 2004)).getMiddleMillisecond(), 43478D);
        xyseries.add((new Day(24, 3, 2004)).getMiddleMillisecond(), 13000D);
        xyseries.add((new Day(9, 7, 2004)).getMiddleMillisecond(), 4370D);
        xyseries.add((new Day(12, 1, 2004)).getMiddleMillisecond(), 67648D);
        xyseries.add((new Day(5, 4, 2004)).getMiddleMillisecond(), 44427D);
        xyseries.add((new Day(28, 4, 2004)).getMiddleMillisecond(), 35210D);
        xyseries.add((new Day(30, 6, 2004)).getMiddleMillisecond(), 784D);
        xyseries.add((new Day(8, 4, 2004)).getMiddleMillisecond(), 41645D);
        xyseries.add((new Day(1, 12, 2003)).getMiddleMillisecond(), 46919D);
        xyseries.add((new Day(4, 6, 2004)).getMiddleMillisecond(), 19853D);
        xyseries.add((new Day(6, 5, 2004)).getMiddleMillisecond(), 18070D);
        xyseries.add((new Day(15, 1, 2004)).getMiddleMillisecond(), 5213D);
        xyseries.add((new Day(14, 11, 2003)).getMiddleMillisecond(), 47288D);
        xyseries.add((new Day(24, 3, 2004)).getMiddleMillisecond(), 18262D);
        xyseries.add((new Day(2, 12, 2003)).getMiddleMillisecond(), 63186D);
        xyseries.add((new Day(30, 7, 2004)).getMiddleMillisecond(), 8980D);
        xyseries.add((new Day(22, 6, 2004)).getMiddleMillisecond(), 1627D);
        xyseries.add((new Day(8, 12, 2003)).getMiddleMillisecond(), 33833D);
        xyseries.add((new Day(5, 3, 2004)).getMiddleMillisecond(), 68608D);
        xyseries.add((new Day(12, 5, 2004)).getMiddleMillisecond(), 785D);
        xyseries.add((new Day(30, 7, 2004)).getMiddleMillisecond(), 12055D);
        xyseries.add((new Day(11, 6, 2004)).getMiddleMillisecond(), 11902D);
        xyseries.add((new Day(9, 8, 2004)).getMiddleMillisecond(), 102D);
        xyseries.add((new Day(19, 1, 2004)).getMiddleMillisecond(), 69549D);
        xyseries.add((new Day(27, 5, 2004)).getMiddleMillisecond(), 4037D);
        xyseries.add((new Day(21, 11, 2003)).getMiddleMillisecond(), 94967D);
        xyseries.add((new Day(19, 11, 2003)).getMiddleMillisecond(), 99063D);
        xyseries.add((new Day(26, 4, 2004)).getMiddleMillisecond(), 365D);
        xyseries.add((new Day(5, 4, 2004)).getMiddleMillisecond(), 30681D);
        xyseries.add((new Day(6, 7, 2004)).getMiddleMillisecond(), 15798D);
        xyseries.add((new Day(13, 3, 2004)).getMiddleMillisecond(), 111394D);
        xyseries.add((new Day(27, 5, 2004)).getMiddleMillisecond(), 781D);
        xyseries.add((new Day(9, 6, 2004)).getMiddleMillisecond(), 30862D);
        xyseries.add((new Day(7, 4, 2004)).getMiddleMillisecond(), 58378D);
        xyseries.add((new Day(10, 11, 2003)).getMiddleMillisecond(), 27414D);
        xyseries.add((new Day(28, 7, 2004)).getMiddleMillisecond(), 1264D);
        xyseries.add((new Day(27, 5, 2004)).getMiddleMillisecond(), 3700D);
        xyseries.add((new Day(30, 7, 2004)).getMiddleMillisecond(), 23915D);
        xyseries.add((new Day(21, 5, 2004)).getMiddleMillisecond(), 3140D);
        xyseries.add((new Day(13, 8, 2004)).getMiddleMillisecond(), 9925D);
        xyseries.add((new Day(24, 5, 2004)).getMiddleMillisecond(), 45225D);
        xyseries.add((new Day(3, 2, 2004)).getMiddleMillisecond(), 2816D);
        xyseries.add((new Day(11, 2, 2004)).getMiddleMillisecond(), 84916D);
        xyseries.add((new Day(19, 4, 2004)).getMiddleMillisecond(), 10025D);
        xyseries.add((new Day(27, 11, 2003)).getMiddleMillisecond(), 25607D);
        xyseries.add((new Day(21, 6, 2004)).getMiddleMillisecond(), 6961D);
        xyseries.add((new Day(13, 8, 2004)).getMiddleMillisecond(), 758D);
        xyseries.add((new Day(11, 2, 2004)).getMiddleMillisecond(), 53802D);
        xyseries.add((new Day(19, 12, 2003)).getMiddleMillisecond(), 125030D);
        xyseries.add((new Day(4, 10, 2004)).getMiddleMillisecond(), 3056D);
        xyseries.add((new Day(13, 8, 2004)).getMiddleMillisecond(), 1700D);
        xyseries.add((new Day(11, 5, 2004)).getMiddleMillisecond(), 12967D);
        xyseries.add((new Day(15, 12, 2003)).getMiddleMillisecond(), 4549D);
        xyseries.add((new Day(17, 11, 2003)).getMiddleMillisecond(), 152336D);
        xyseries.add((new Day(15, 12, 2003)).getMiddleMillisecond(), 110483D);
        xyseries.add((new Day(22, 6, 2004)).getMiddleMillisecond(), 27274D);
        xyseries.add((new Day(28, 9, 2004)).getMiddleMillisecond(), 8161D);
        xyseries.add((new Day(27, 11, 2003)).getMiddleMillisecond(), 103805D);
        xyseries.add((new Day(11, 10, 2004)).getMiddleMillisecond(), 32D);
        xyseries.add((new Day(19, 1, 2004)).getMiddleMillisecond(), 1847D);
        xyseries.add((new Day(11, 6, 2004)).getMiddleMillisecond(), 40917D);
        xyseries.add((new Day(13, 8, 2004)).getMiddleMillisecond(), 6125D);
        xyseries.add((new Day(8, 10, 2004)).getMiddleMillisecond(), 7822D);
        xyseries.add((new Day(10, 9, 2004)).getMiddleMillisecond(), 28213D);
        xyseries.add((new Day(16, 9, 2004)).getMiddleMillisecond(), 15285D);
        xyseries.add((new Day(18, 10, 2004)).getMiddleMillisecond(), 4015D);
        xyseries.add((new Day(25, 8, 2004)).getMiddleMillisecond(), 13929D);
        xyseries.add((new Day(20, 3, 2004)).getMiddleMillisecond(), 55132D);
        xyseries.add((new Day(26, 10, 2004)).getMiddleMillisecond(), 3473D);
        xyseries.add((new Day(27, 10, 2004)).getMiddleMillisecond(), 2D);
        xyseries.add((new Day(11, 6, 2004)).getMiddleMillisecond(), 34557D);
        xyseries.add((new Day(4, 5, 2004)).getMiddleMillisecond(), 55015D);
        xyseries.add((new Day(7, 6, 2004)).getMiddleMillisecond(), 1750D);
        xyseries.add((new Day(23, 2, 2004)).getMiddleMillisecond(), 109978D);
        xyseries.add((new Day(13, 8, 2004)).getMiddleMillisecond(), 43759D);
        xyseries.add((new Day(12, 8, 2004)).getMiddleMillisecond(), 42897D);
        xyseries.add((new Day(10, 3, 2004)).getMiddleMillisecond(), 91480D);
        xyseries.add((new Day(19, 2, 2004)).getMiddleMillisecond(), 141200D);
        xyseries.add((new Day(28, 5, 2004)).getMiddleMillisecond(), 5437D);
        xyseries.add((new Day(9, 8, 2004)).getMiddleMillisecond(), 2750D);
        xyseries.add((new Day(13, 4, 2004)).getMiddleMillisecond(), 25170D);
        xyseries.add((new Day(12, 5, 2004)).getMiddleMillisecond(), 45996D);
        xyseries.add((new Day(17, 12, 2003)).getMiddleMillisecond(), 61903D);
        xyseries.add((new Day(15, 4, 2004)).getMiddleMillisecond(), 75129D);
        xyseries.add((new Day(26, 10, 2004)).getMiddleMillisecond(), 15217D);
        xyseries.add((new Day(27, 7, 2004)).getMiddleMillisecond(), 15352D);
        xyseries.add((new Day(5, 5, 2004)).getMiddleMillisecond(), 74223D);
        xyseries.add((new Day(27, 2, 2004)).getMiddleMillisecond(), 97847D);
        xyseries.add((new Day(24, 11, 2003)).getMiddleMillisecond(), 13082D);
        xyseries.add((new Day(17, 11, 2004)).getMiddleMillisecond(), 4019D);
        xyseries.add((new Day(25, 10, 2004)).getMiddleMillisecond(), 186D);
        xyseries.add((new Day(7, 1, 2004)).getMiddleMillisecond(), 10595D);
        xyseries.add((new Day(4, 11, 2004)).getMiddleMillisecond(), 240D);
        xyseries.add((new Day(9, 8, 2004)).getMiddleMillisecond(), 35085D);
        xyseries.add((new Day(17, 7, 2004)).getMiddleMillisecond(), 59925D);
        xyseries.add((new Day(17, 8, 2004)).getMiddleMillisecond(), 43200D);
        xyseries.add((new Day(3, 11, 2004)).getMiddleMillisecond(), 217D);
        xyseries.add((new Day(30, 10, 2004)).getMiddleMillisecond(), 637D);
        xyseries.add((new Day(20, 9, 2004)).getMiddleMillisecond(), 12296D);
        xyseries.add((new Day(17, 11, 2004)).getMiddleMillisecond(), 4299D);
        xyseries.add((new Day(29, 11, 2004)).getMiddleMillisecond(), 3137D);
        xyseries.add((new Day(6, 5, 2004)).getMiddleMillisecond(), 62702D);
        xyseries.add((new Day(24, 6, 2004)).getMiddleMillisecond(), 23243D);
        xyseries.add((new Day(9, 9, 2004)).getMiddleMillisecond(), 873D);
        xyseries.add((new Day(8, 9, 2004)).getMiddleMillisecond(), 23100D);
        xyseries.add((new Day(20, 8, 2004)).getMiddleMillisecond(), 207D);
        xyseries.add((new Day(1, 4, 2004)).getMiddleMillisecond(), 105779D);
        xyseries.add((new Day(30, 3, 2004)).getMiddleMillisecond(), 69874D);
        xyseries.add((new Day(8, 9, 2004)).getMiddleMillisecond(), 19287D);
        xyseries.add((new Day(26, 7, 2004)).getMiddleMillisecond(), 59130D);
        xyseries.add((new Day(14, 9, 2004)).getMiddleMillisecond(), 13343D);
        xyseries.add((new Day(3, 3, 2004)).getMiddleMillisecond(), 89040D);
        xyseries.add((new Day(13, 12, 2004)).getMiddleMillisecond(), 4752D);
        xyseries.add((new Day(16, 1, 2004)).getMiddleMillisecond(), 2321D);
        xyseries.add((new Day(26, 4, 2004)).getMiddleMillisecond(), 24831D);
        xyseries.add((new Day(15, 1, 2004)).getMiddleMillisecond(), 3390D);
        xyseries.add((new Day(8, 11, 2004)).getMiddleMillisecond(), 2340D);
        xyseries.add((new Day(15, 12, 2004)).getMiddleMillisecond(), 1553D);
        xyseries.add((new Day(21, 9, 2004)).getMiddleMillisecond(), 7186D);
        xyseries.add((new Day(30, 10, 2004)).getMiddleMillisecond(), 16444D);
        xyseries.add((new Day(26, 5, 2004)).getMiddleMillisecond(), 54688D);
        xyseries.add((new Day(13, 10, 2004)).getMiddleMillisecond(), 12562D);
        xyseries.add((new Day(7, 10, 2004)).getMiddleMillisecond(), 4023D);
        xyseries.add((new Day(11, 11, 2004)).getMiddleMillisecond(), 12999D);
        xyseries.add((new Day(25, 10, 2004)).getMiddleMillisecond(), 5378D);
        xyseries.add((new Day(29, 6, 2004)).getMiddleMillisecond(), 49340D);
        xyseries.add((new Day(14, 1, 2004)).getMiddleMillisecond(), 22112D);
        xyseries.add((new Day(9, 2, 2004)).getMiddleMillisecond(), 79733D);
        xyseries.add((new Day(23, 9, 2004)).getMiddleMillisecond(), 490D);
        xyseries.add((new Day(13, 11, 2004)).getMiddleMillisecond(), 59D);
        xyseries.add((new Day(13, 10, 2004)).getMiddleMillisecond(), 31160D);
        xyseries.add((new Day(18, 2, 2004)).getMiddleMillisecond(), 104655D);
        xyseries.add((new Day(26, 7, 2004)).getMiddleMillisecond(), 2956D);
        xyseries.add((new Day(10, 12, 2004)).getMiddleMillisecond(), 80D);
        xyseries.add((new Day(13, 3, 2004)).getMiddleMillisecond(), 192969D);
        xyseries.add((new Day(9, 8, 2004)).getMiddleMillisecond(), 45940D);
        xyseries.add((new Day(8, 4, 2004)).getMiddleMillisecond(), 109268D);
        xyseries.add((new Day(4, 10, 2004)).getMiddleMillisecond(), 12716D);
        xyseries.add((new Day(9, 12, 2004)).getMiddleMillisecond(), 8430D);
        xyseries.add((new Day(18, 11, 2004)).getMiddleMillisecond(), 24994D);
        xyseries.add((new Day(17, 3, 2004)).getMiddleMillisecond(), 96378D);
        xyseries.add((new Day(20, 12, 2004)).getMiddleMillisecond(), 11023D);
        xyseries.add((new Day(20, 12, 2004)).getMiddleMillisecond(), 11023D);
        xyseries.add((new Day(14, 6, 2004)).getMiddleMillisecond(), 49043D);
        xyseries.add((new Day(6, 11, 2004)).getMiddleMillisecond(), 21168D);
        xyseries.add((new Day(4, 9, 2004)).getMiddleMillisecond(), 64336D);
        xyseries.add((new Day(12, 1, 2005)).getMiddleMillisecond(), 522D);
        xyseries.add((new Day(17, 6, 2004)).getMiddleMillisecond(), 84255D);
        xyseries.add((new Day(11, 11, 2004)).getMiddleMillisecond(), 4106D);
        xyseries.add((new Day(13, 9, 2004)).getMiddleMillisecond(), 69040D);
        xyseries.add((new Day(9, 6, 2004)).getMiddleMillisecond(), 44534D);
        xyseries.add((new Day(29, 10, 2004)).getMiddleMillisecond(), 1556D);
        xyseries.add((new Day(21, 9, 2004)).getMiddleMillisecond(), 28048D);
        xyseries.add((new Day(14, 1, 2005)).getMiddleMillisecond(), 482D);
        xyseries.add((new Day(12, 2, 2004)).getMiddleMillisecond(), 137490D);
        xyseries.add((new Day(9, 10, 2004)).getMiddleMillisecond(), 19965D);
        xyseries.add((new Day(5, 1, 2005)).getMiddleMillisecond(), 1625D);
        xyseries.add((new Day(12, 11, 2004)).getMiddleMillisecond(), 17972D);
        xyseries.add((new Day(23, 9, 2004)).getMiddleMillisecond(), 23591D);
        xyseries.add((new Day(8, 4, 2004)).getMiddleMillisecond(), 44562D);
        xyseries.add((new Day(4, 10, 2004)).getMiddleMillisecond(), 40126D);
        xyseries.add((new Day(12, 8, 2004)).getMiddleMillisecond(), 84683D);
        xyseries.add((new Day(9, 11, 2004)).getMiddleMillisecond(), 11943D);
        xyseries.add((new Day(27, 7, 2004)).getMiddleMillisecond(), 114763D);
        xyseries.add((new Day(9, 8, 2004)).getMiddleMillisecond(), 61353D);
        xyseries.add((new Day(4, 1, 2005)).getMiddleMillisecond(), 8746D);
        xyseries.add((new Day(13, 10, 2004)).getMiddleMillisecond(), 43273D);
        xyseries.add((new Day(17, 9, 2004)).getMiddleMillisecond(), 36157D);
        xyseries.add((new Day(8, 12, 2004)).getMiddleMillisecond(), 19701D);
        xyseries.add((new Day(2, 6, 2004)).getMiddleMillisecond(), 58987D);
        xyseries.add((new Day(6, 7, 2004)).getMiddleMillisecond(), 17320D);
        xyseries.add((new Day(18, 12, 2004)).getMiddleMillisecond(), 6923D);
        xyseries.add((new Day(13, 3, 2004)).getMiddleMillisecond(), 49538D);
        xyseries.add((new Day(20, 1, 2005)).getMiddleMillisecond(), 350D);
        xyseries.add((new Day(19, 3, 2004)).getMiddleMillisecond(), 45218D);
        xyseries.add((new Day(16, 12, 2004)).getMiddleMillisecond(), 9122D);
        xyseries.add((new Day(12, 1, 2004)).getMiddleMillisecond(), 150321D);
        xyseries.add((new Day(17, 11, 2004)).getMiddleMillisecond(), 44811D);
        xyseries.add((new Day(24, 11, 2004)).getMiddleMillisecond(), 5229D);
        xyseries.add((new Day(19, 5, 2004)).getMiddleMillisecond(), 103090D);
        xyseries.add((new Day(9, 6, 2004)).getMiddleMillisecond(), 57797D);
        xyseries.add((new Day(29, 6, 2004)).getMiddleMillisecond(), 20401D);
        xyseries.add((new Day(15, 10, 2004)).getMiddleMillisecond(), 22720D);
        xyseries.add((new Day(3, 2, 2005)).getMiddleMillisecond(), 7430D);
        xyseries.add((new Day(16, 8, 2004)).getMiddleMillisecond(), 1450D);
        xyseries.add((new Day(2, 11, 2004)).getMiddleMillisecond(), 44595D);
        xyseries.add((new Day(11, 2, 2004)).getMiddleMillisecond(), 165301D);
        xyseries.add((new Day(28, 6, 2004)).getMiddleMillisecond(), 70065D);
        xyseries.add((new Day(23, 6, 2004)).getMiddleMillisecond(), 18394D);
        xyseries.add((new Day(26, 7, 2004)).getMiddleMillisecond(), 45087D);
        xyseries.add((new Day(20, 10, 2004)).getMiddleMillisecond(), 6971D);
        xyseries.add((new Day(29, 11, 2004)).getMiddleMillisecond(), 971D);
        xyseries.add((new Day(2, 3, 2005)).getMiddleMillisecond(), 4241D);
        xyseries.add((new Day(7, 10, 2004)).getMiddleMillisecond(), 2671D);
        xyseries.add((new Day(14, 4, 2004)).getMiddleMillisecond(), 78014D);
        xyseries.add((new Day(13, 8, 2004)).getMiddleMillisecond(), 81107D);
        xyseries.add((new Day(15, 11, 2004)).getMiddleMillisecond(), 37558D);
        xyseries.add((new Day(2, 3, 2005)).getMiddleMillisecond(), 6128D);
        xyseries.add((new Day(17, 12, 2004)).getMiddleMillisecond(), 6478D);
        xyseries.add((new Day(27, 11, 2003)).getMiddleMillisecond(), 39804D);
        xyseries.add((new Day(13, 4, 2004)).getMiddleMillisecond(), 25591D);
        xyseries.add((new Day(18, 5, 2004)).getMiddleMillisecond(), 2297D);
        xyseries.add((new Day(2, 2, 2005)).getMiddleMillisecond(), 3785D);
        xyseries.add((new Day(18, 8, 2004)).getMiddleMillisecond(), 5256D);
        xyseries.add((new Day(24, 2, 2005)).getMiddleMillisecond(), 6100D);
        xyseries.add((new Day(13, 5, 2004)).getMiddleMillisecond(), 86738D);
        xyseries.add((new Day(31, 3, 2005)).getMiddleMillisecond(), 278D);
        xyseries.add((new Day(6, 8, 2004)).getMiddleMillisecond(), 110455D);
        xyseries.add((new Day(30, 9, 2004)).getMiddleMillisecond(), 99828D);
        xyseries.add((new Day(22, 10, 2004)).getMiddleMillisecond(), 64827D);
        xyseries.add((new Day(13, 10, 2004)).getMiddleMillisecond(), 149269D);
        xyseries.add((new Day(16, 8, 2004)).getMiddleMillisecond(), 5948D);
        xyseries.add((new Day(13, 4, 2005)).getMiddleMillisecond(), 6025D);
        xyseries.add((new Day(28, 2, 2005)).getMiddleMillisecond(), 7755D);
        xyseries.add((new Day(8, 12, 2004)).getMiddleMillisecond(), 44226D);
        xyseries.add((new Day(8, 7, 2004)).getMiddleMillisecond(), 89481D);
        xyseries.add((new Day(19, 5, 2004)).getMiddleMillisecond(), 85650D);
        xyseries.add((new Day(28, 9, 2004)).getMiddleMillisecond(), 50713D);
        xyseries.add((new Day(13, 8, 2004)).getMiddleMillisecond(), 94151D);
        xyseries.add((new Day(20, 1, 2005)).getMiddleMillisecond(), 38905D);
        xyseries.add((new Day(7, 4, 2005)).getMiddleMillisecond(), 437D);
        xyseries.add((new Day(31, 1, 2004)).getMiddleMillisecond(), 155322D);
        xyseries.add((new Day(26, 10, 2004)).getMiddleMillisecond(), 80867D);
        xyseries.add((new Day(10, 1, 2005)).getMiddleMillisecond(), 22530D);
        xyseries.add((new Day(18, 3, 2005)).getMiddleMillisecond(), 7280D);
        xyseries.add((new Day(3, 3, 2005)).getMiddleMillisecond(), 199D);
        xyseries.add((new Day(13, 9, 2004)).getMiddleMillisecond(), 93475D);
        xyseries.add((new Day(11, 8, 2004)).getMiddleMillisecond(), 74984D);
        xyseries.add((new Day(21, 12, 2004)).getMiddleMillisecond(), 28153D);
        xyseries.add((new Day(18, 3, 2005)).getMiddleMillisecond(), 6725D);
        xyseries.add((new Day(5, 4, 2005)).getMiddleMillisecond(), 2095D);
        xyseries.add((new Day(15, 7, 2004)).getMiddleMillisecond(), 140022D);
        xyseries.add((new Day(12, 11, 2004)).getMiddleMillisecond(), 63582D);
        xyseries.add((new Day(2, 4, 2004)).getMiddleMillisecond(), 5117D);
        xyseries.add((new Day(17, 5, 2004)).getMiddleMillisecond(), 93320D);
        xyseries.add((new Day(15, 12, 2004)).getMiddleMillisecond(), 20393D);
        xyseries.add((new Day(1, 3, 2004)).getMiddleMillisecond(), 29900D);
        xyseries.add((new Day(27, 4, 2005)).getMiddleMillisecond(), 832D);
        xyseries.add((new Day(15, 6, 2004)).getMiddleMillisecond(), 69073D);
        xyseries.add((new Day(20, 5, 2005)).getMiddleMillisecond(), 2625D);
        xyseries.add((new Day(21, 4, 2005)).getMiddleMillisecond(), 2956D);
        xyseries.add((new Day(12, 2, 2005)).getMiddleMillisecond(), 881D);
        xyseries.add((new Day(8, 10, 2004)).getMiddleMillisecond(), 95544D);
        xyseries.add((new Day(9, 8, 2004)).getMiddleMillisecond(), 103419D);
        xyseries.add((new Day(23, 6, 2004)).getMiddleMillisecond(), 99280D);
        xyseries.add((new Day(27, 8, 2004)).getMiddleMillisecond(), 47822D);
        xyseries.add((new Day(9, 3, 2005)).getMiddleMillisecond(), 1336D);
        xyseries.add((new Day(23, 7, 2004)).getMiddleMillisecond(), 78313D);
        xyseries.add((new Day(26, 10, 2004)).getMiddleMillisecond(), 111320D);
        xyseries.add((new Day(3, 11, 2004)).getMiddleMillisecond(), 6187D);
        xyseries.add((new Day(18, 8, 2004)).getMiddleMillisecond(), 88757D);
        xyseries.add((new Day(8, 11, 2004)).getMiddleMillisecond(), 64621D);
        xyseries.add((new Day(13, 4, 2005)).getMiddleMillisecond(), 5005D);
        xyseries.add((new Day(14, 1, 2004)).getMiddleMillisecond(), 18246D);
        xyseries.add((new Day(15, 10, 2004)).getMiddleMillisecond(), 50016D);
        xyseries.add((new Day(24, 3, 2005)).getMiddleMillisecond(), 24179D);
        xyseries.add((new Day(4, 3, 2005)).getMiddleMillisecond(), 24203D);
        xyseries.add((new Day(1, 3, 2005)).getMiddleMillisecond(), 6079D);
        xyseries.add((new Day(19, 11, 2004)).getMiddleMillisecond(), 77738D);
        xyseries.add((new Day(28, 9, 2004)).getMiddleMillisecond(), 49283D);
        xyseries.add((new Day(24, 11, 2004)).getMiddleMillisecond(), 4880D);
        xyseries.add((new Day(25, 2, 2005)).getMiddleMillisecond(), 30705D);
        xyseries.add((new Day(22, 10, 2004)).getMiddleMillisecond(), 89693D);
        xyseries.add((new Day(1, 4, 2005)).getMiddleMillisecond(), 2865D);
        xyseries.add((new Day(20, 1, 2005)).getMiddleMillisecond(), 46560D);
        xyseries.add((new Day(4, 1, 2005)).getMiddleMillisecond(), 16570D);
        xyseries.add((new Day(13, 4, 2005)).getMiddleMillisecond(), 2602D);
        xyseries.add((new Day(17, 6, 2005)).getMiddleMillisecond(), 551D);
        xyseries.add((new Day(22, 10, 2004)).getMiddleMillisecond(), 103984D);
        xyseries.add((new Day(4, 1, 2005)).getMiddleMillisecond(), 18078D);
        xyseries.add((new Day(7, 4, 2005)).getMiddleMillisecond(), 11146D);
        xyseries.add((new Day(22, 4, 2005)).getMiddleMillisecond(), 2266D);
        xyseries.add((new Day(18, 5, 2004)).getMiddleMillisecond(), 78472D);
        xyseries.add((new Day(22, 10, 2004)).getMiddleMillisecond(), 83375D);
        xyseries.add((new Day(25, 8, 2004)).getMiddleMillisecond(), 1265D);
        xyseries.add((new Day(7, 4, 2005)).getMiddleMillisecond(), 380D);
        xyseries.add((new Day(20, 4, 2005)).getMiddleMillisecond(), 30071D);
        xyseries.add((new Day(2, 2, 2005)).getMiddleMillisecond(), 2020D);
        xyseries.add((new Day(24, 3, 2005)).getMiddleMillisecond(), 30547D);
        xyseries1.add((new Day(22, 2, 2005)).getMiddleMillisecond(), 57743D);
        xyseries1.add((new Day(5, 11, 2003)).getMiddleMillisecond(), 21135D);
        xyseries1.add((new Day(28, 5, 2005)).getMiddleMillisecond(), 4988D);
        xyseries1.add((new Day(5, 4, 2004)).getMiddleMillisecond(), 51760D);
        xyseries1.add((new Day(16, 3, 2005)).getMiddleMillisecond(), 2283D);
        xyseries1.add((new Day(16, 3, 2005)).getMiddleMillisecond(), 12927D);
        xyseries1.add((new Day(26, 4, 2005)).getMiddleMillisecond(), 9223D);
        xyseries1.add((new Day(15, 12, 2004)).getMiddleMillisecond(), 88625D);
        xyseries1.add((new Day(19, 10, 2004)).getMiddleMillisecond(), 106741D);
        xyseries1.add((new Day(11, 7, 2005)).getMiddleMillisecond(), 1802D);
        xyseries1.add((new Day(20, 1, 2005)).getMiddleMillisecond(), 43372D);
        xyseries1.add((new Day(30, 3, 2005)).getMiddleMillisecond(), 67224D);
        xyseries1.add((new Day(6, 6, 2005)).getMiddleMillisecond(), 8204D);
        xyseries1.add((new Day(2, 3, 2005)).getMiddleMillisecond(), 38504D);
        xyseries1.add((new Day(1, 1, 2005)).getMiddleMillisecond(), 47599D);
        xyseries1.add((new Day(30, 9, 2004)).getMiddleMillisecond(), 64959D);
        xyseries1.add((new Day(7, 5, 2005)).getMiddleMillisecond(), 30701D);
        xyseries1.add((new Day(3, 5, 2004)).getMiddleMillisecond(), 150586D);
        xyseries1.add((new Day(5, 8, 2005)).getMiddleMillisecond(), 713D);
        xyseries1.add((new Day(21, 6, 2005)).getMiddleMillisecond(), 8091D);
        xyseries1.add((new Day(21, 6, 2005)).getMiddleMillisecond(), 891D);
        xyseries1.add((new Day(8, 7, 2005)).getMiddleMillisecond(), 5940D);
        xyseries1.add((new Day(18, 6, 2005)).getMiddleMillisecond(), 453D);
        xyseries1.add((new Day(11, 8, 2005)).getMiddleMillisecond(), 715D);
        xyseries1.add((new Day(23, 7, 2004)).getMiddleMillisecond(), 45792D);
        xyseries1.add((new Day(11, 11, 2004)).getMiddleMillisecond(), 83422D);
        xyseries1.add((new Day(3, 5, 2004)).getMiddleMillisecond(), 216825D);
        xyseries1.add((new Day(26, 7, 2004)).getMiddleMillisecond(), 3443D);
        xyseries1.add((new Day(25, 6, 2005)).getMiddleMillisecond(), 21288D);
        xyseries1.add((new Day(28, 6, 2004)).getMiddleMillisecond(), 64987D);
        xyseries1.add((new Day(15, 7, 2005)).getMiddleMillisecond(), 113D);
        xyseries1.add((new Day(1, 12, 2004)).getMiddleMillisecond(), 18000D);
        xyseries1.add((new Day(22, 6, 2005)).getMiddleMillisecond(), 23581D);
        xyseries1.add((new Day(13, 1, 2005)).getMiddleMillisecond(), 90667D);
        xyseries1.add((new Day(24, 6, 2004)).getMiddleMillisecond(), 11599D);
        xyseries1.add((new Day(8, 12, 2004)).getMiddleMillisecond(), 47985D);
        xyseries1.add((new Day(27, 6, 2005)).getMiddleMillisecond(), 6545D);
        xyseries1.add((new Day(10, 6, 2005)).getMiddleMillisecond(), 29100D);
        xyseries1.add((new Day(31, 8, 2004)).getMiddleMillisecond(), 388D);
        xyseries1.add((new Day(10, 12, 2004)).getMiddleMillisecond(), 73404D);
        xyseries1.add((new Day(16, 8, 2005)).getMiddleMillisecond(), 516D);
        xyseries1.add((new Day(17, 12, 2004)).getMiddleMillisecond(), 34289D);
        xyseries1.add((new Day(19, 10, 2004)).getMiddleMillisecond(), 53409D);
        xyseries1.add((new Day(6, 1, 2005)).getMiddleMillisecond(), 102640D);
        xyseries1.add((new Day(22, 4, 2005)).getMiddleMillisecond(), 1741D);
        xyseries1.add((new Day(1, 10, 2004)).getMiddleMillisecond(), 104899D);
        xyseries1.add((new Day(29, 7, 2005)).getMiddleMillisecond(), 785D);
        xyseries1.add((new Day(20, 6, 2005)).getMiddleMillisecond(), 24834D);
        xyseries1.add((new Day(10, 6, 2005)).getMiddleMillisecond(), 34197D);
        XYSeriesCollection xyseriescollection = new XYSeriesCollection();
        xyseriescollection.addSeries(xyseries);
        xyseriescollection.addSeries(xyseries1);
        return xyseriescollection;
    }

    private static JFreeChart createChart(XYDataset xydataset) {
        JFreeChart jfreechart = ChartFactory.createTimeSeriesChart("Breakdowns", "Production Date",
                "Hours of Operation", xydataset, true, true, false);
        jfreechart.setBackgroundPaint(Color.white);
        XYPlot xyplot = (XYPlot) jfreechart.getPlot();
        XYLineAndShapeRenderer xylineandshaperenderer = (XYLineAndShapeRenderer) xyplot.getRenderer();
        xylineandshaperenderer.setSeriesShape(0, new Rectangle(2, 2));
        xylineandshaperenderer.setSeriesShape(1, new Rectangle(2, 2));
        xylineandshaperenderer.setBaseLinesVisible(false);
        xylineandshaperenderer.setBaseShapesFilled(true);
        xylineandshaperenderer.setBaseShapesVisible(true);
        xylineandshaperenderer.setBaseToolTipGenerator(null);
        xylineandshaperenderer.setSeriesPaint(0, Color.blue);
        xylineandshaperenderer.setSeriesPaint(1, Color.red);
        xyplot.setDomainGridlineStroke(new BasicStroke(1.0F));
        xyplot.setRangeGridlineStroke(new BasicStroke(1.0F));
        NumberAxis numberaxis = (NumberAxis) xyplot.getRangeAxis();
        numberaxis.setTickUnit(new NumberTickUnit(50000D));
        DateAxis dateaxis = (DateAxis) xyplot.getDomainAxis();
        dateaxis.setTickUnit(new DateTickUnit(DateTickUnitType.MONTH, 1));
        dateaxis.setDateFormatOverride(new SimpleDateFormat("MMM.yy"));
        dateaxis.setVerticalTickLabels(true);
        Color color = new Color(255, 0, 0, 60);
        Color color1 = new Color(0, 255, 0, 60);
        XYBoxAnnotation xyboxannotation = new XYBoxAnnotation((new Day(1, 1, 2004)).getMiddleMillisecond(), 0.0D,
                (new Day(31, 1, 2004)).getMiddleMillisecond(), 50000D, new BasicStroke(0.0F), color, color);
        xyboxannotation.setToolTipText("Value: 2.9");
        xylineandshaperenderer.addAnnotation(xyboxannotation);
        xyboxannotation = new XYBoxAnnotation((new Day(1, 2, 2004)).getMiddleMillisecond(), 0.0D,
                (new Day(29, 2, 2004)).getMiddleMillisecond(), 50000D, new BasicStroke(0.0F), color, color);
        xyboxannotation.setToolTipText("Value: 2.5");
        xylineandshaperenderer.addAnnotation(xyboxannotation);
        xyboxannotation = new XYBoxAnnotation((new Day(1, 5, 2004)).getMiddleMillisecond(), 50000D,
                (new Day(31, 5, 2004)).getMiddleMillisecond(), 100000D, new BasicStroke(0.0F), color, color);
        xyboxannotation.setToolTipText("Value: 1.8");
        xylineandshaperenderer.addAnnotation(xyboxannotation);
        xyboxannotation = new XYBoxAnnotation((new Day(1, 6, 2005)).getMiddleMillisecond(), 0.0D,
                (new Day(30, 6, 2005)).getMiddleMillisecond(), 50000D, new BasicStroke(0.0F), color1, color1);
        xyboxannotation.setToolTipText("Value: 3.7");
        xylineandshaperenderer.addAnnotation(xyboxannotation);
        return jfreechart;
    }

    public static JPanel createDemoPanel() {
        JFreeChart jfreechart = createChart(createDataset());
        return new ChartPanel(jfreechart);
    }

    public static void main(String args[]) {
        XYBoxAnnotationDemo1 xyboxannotationdemo1 = new XYBoxAnnotationDemo1("XYBoxAnnotationDemo1");
        xyboxannotationdemo1.pack();
        RefineryUtilities.centerFrameOnScreen(xyboxannotationdemo1);
        xyboxannotationdemo1.setVisible(true);
    }

}