Example usage for org.jfree.data.time TimeSeriesCollection TimeSeriesCollection

List of usage examples for org.jfree.data.time TimeSeriesCollection TimeSeriesCollection

Introduction

In this page you can find the example usage for org.jfree.data.time TimeSeriesCollection TimeSeriesCollection.

Prototype

public TimeSeriesCollection(TimeSeries series) 

Source Link

Document

Constructs a dataset containing a single series (more can be added), tied to the default timezone.

Usage

From source file:org.jfree.chart.demo.XYBarChartDemo1.java

private static IntervalXYDataset createDataset() {
    TimeSeries timeseries = new TimeSeries("Executions", "Year", "Count");
    try {// w  ww .j  a va 2 s .co  m
        timeseries.add(new Year(1976), new Integer(0));
        timeseries.add(new Year(1977), new Integer(1));
        timeseries.add(new Year(1978), new Integer(0));
        timeseries.add(new Year(1979), new Integer(2));
        timeseries.add(new Year(1980), new Integer(0));
        timeseries.add(new Year(1981), new Integer(1));
        timeseries.add(new Year(1982), new Integer(2));
        timeseries.add(new Year(1983), new Integer(5));
        timeseries.add(new Year(1984), new Integer(21));
        timeseries.add(new Year(1985), new Integer(18));
        timeseries.add(new Year(1986), new Integer(18));
        timeseries.add(new Year(1987), new Integer(25));
        timeseries.add(new Year(1988), new Integer(11));
        timeseries.add(new Year(1989), new Integer(16));
        timeseries.add(new Year(1990), new Integer(23));
        timeseries.add(new Year(1991), new Integer(14));
        timeseries.add(new Year(1992), new Integer(31));
        timeseries.add(new Year(1993), new Integer(38));
        timeseries.add(new Year(1994), new Integer(31));
        timeseries.add(new Year(1995), new Integer(56));
        timeseries.add(new Year(1996), new Integer(45));
        timeseries.add(new Year(1997), new Integer(74));
        timeseries.add(new Year(1998), new Integer(68));
        timeseries.add(new Year(1999), new Integer(98));
        timeseries.add(new Year(2000), new Integer(85));
        timeseries.add(new Year(2001), new Integer(66));
        timeseries.add(new Year(2002), new Integer(71));
        timeseries.add(new Year(2003), new Integer(65));
        timeseries.add(new Year(2004), new Integer(59));
        timeseries.add(new Year(2005), new Integer(60));
    } catch (Exception exception) {
        System.err.println(exception.getMessage());
    }
    TimeSeriesCollection timeseriescollection = new TimeSeriesCollection(timeseries);
    return timeseriescollection;
}

From source file:org.jfree.chart.demo.OverlaidXYPlotDemo1.java

private static XYDataset createDataset2() {
    TimeSeries timeseries = new TimeSeries("Series 2");
    timeseries.add(new Day(3, 3, 2002), 16853.200000000001D);
    timeseries.add(new Day(4, 3, 2002), 19642.299999999999D);
    timeseries.add(new Day(5, 3, 2002), 18253.5D);
    timeseries.add(new Day(6, 3, 2002), 15352.299999999999D);
    timeseries.add(new Day(7, 3, 2002), 13532D);
    timeseries.add(new Day(8, 3, 2002), 12635.299999999999D);
    timeseries.add(new Day(9, 3, 2002), 13998.200000000001D);
    timeseries.add(new Day(10, 3, 2002), 11943.200000000001D);
    timeseries.add(new Day(11, 3, 2002), 16943.900000000001D);
    timeseries.add(new Day(12, 3, 2002), 17843.200000000001D);
    timeseries.add(new Day(13, 3, 2002), 16495.299999999999D);
    timeseries.add(new Day(14, 3, 2002), 17943.599999999999D);
    timeseries.add(new Day(15, 3, 2002), 18500.700000000001D);
    timeseries.add(new Day(16, 3, 2002), 19595.900000000001D);
    TimeSeriesCollection timeseriescollection = new TimeSeriesCollection(timeseries);
    return timeseriescollection;
}

From source file:org.jfree.chart.demo.TimeSeriesDemo5.java

/**
 * Creates a sample dataset./*from w w w .j  a v  a 2  s .com*/
 * 
 * @return A sample dataset.
 */
private XYDataset createDataset() {

    final TimeSeries series = new TimeSeries("Random Data");
    Day current = new Day(1, 1, 1990);
    double value = 100.0;
    for (int i = 0; i < 4000; i++) {
        try {
            value = value + Math.random() - 0.5;
            series.add(current, new Double(value));
            current = (Day) current.next();
        } catch (SeriesException e) {
            System.err.println("Error adding to series");
        }
    }
    return new TimeSeriesCollection(series);
}

From source file:org.jfree.chart.demo.DynamicDataDemo3.java

/**
 * Constructs a new demonstration application.
 *
 * @param title  the frame title.//from w ww.j  a va 2  s .co  m
 */
public DynamicDataDemo3(final String title) {

    super(title);

    final CombinedDomainXYPlot plot = new CombinedDomainXYPlot(new DateAxis("Time"));
    this.datasets = new TimeSeriesCollection[SUBPLOT_COUNT];

    for (int i = 0; i < SUBPLOT_COUNT; i++) {
        this.lastValue[i] = 100.0;
        final TimeSeries series = new TimeSeries("Random " + i, Millisecond.class);
        this.datasets[i] = new TimeSeriesCollection(series);
        final NumberAxis rangeAxis = new NumberAxis("Y" + i);
        rangeAxis.setAutoRangeIncludesZero(false);
        final XYPlot subplot = new XYPlot(this.datasets[i], null, rangeAxis, new StandardXYItemRenderer());
        subplot.setBackgroundPaint(Color.lightGray);
        subplot.setDomainGridlinePaint(Color.white);
        subplot.setRangeGridlinePaint(Color.white);
        plot.add(subplot);
    }

    final JFreeChart chart = new JFreeChart("Dynamic Data Demo 3", plot);
    //        chart.getLegend().setAnchor(Legend.EAST);
    chart.setBorderPaint(Color.black);
    chart.setBorderVisible(true);
    chart.setBackgroundPaint(Color.white);

    plot.setBackgroundPaint(Color.lightGray);
    plot.setDomainGridlinePaint(Color.white);
    plot.setRangeGridlinePaint(Color.white);
    //      plot.setAxisOffset(new Spacer(Spacer.ABSOLUTE, 4, 4, 4, 4));
    final ValueAxis axis = plot.getDomainAxis();
    axis.setAutoRange(true);
    axis.setFixedAutoRange(60000.0); // 60 seconds

    final JPanel content = new JPanel(new BorderLayout());

    final ChartPanel chartPanel = new ChartPanel(chart);
    content.add(chartPanel);

    final JPanel buttonPanel = new JPanel(new FlowLayout());

    for (int i = 0; i < SUBPLOT_COUNT; i++) {
        final JButton button = new JButton("Series " + i);
        button.setActionCommand("ADD_DATA_" + i);
        button.addActionListener(this);
        buttonPanel.add(button);
    }
    final JButton buttonAll = new JButton("ALL");
    buttonAll.setActionCommand("ADD_ALL");
    buttonAll.addActionListener(this);
    buttonPanel.add(buttonAll);

    content.add(buttonPanel, BorderLayout.SOUTH);
    chartPanel.setPreferredSize(new java.awt.Dimension(500, 470));
    chartPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
    setContentPane(content);

}

From source file:org.jfree.chart.demo.PeriodAxisDemo2.java

private static XYDataset createDataset() {
    TimeSeries timeseries = new TimeSeries("L&G European Index Trust");
    timeseries.add(new Day(24, 1, 2004), 181.80000000000001D);
    timeseries.add(new Day(25, 1, 2004), 167.30000000000001D);
    timeseries.add(new Day(26, 1, 2004), 153.80000000000001D);
    timeseries.add(new Day(27, 1, 2004), 167.59999999999999D);
    timeseries.add(new Day(28, 1, 2004), 158.80000000000001D);
    timeseries.add(new Day(29, 1, 2004), 148.30000000000001D);
    timeseries.add(new Day(30, 1, 2004), 153.90000000000001D);
    timeseries.add(new Day(31, 1, 2004), 142.69999999999999D);
    timeseries.add(new Day(1, 2, 2004), 123.2D);
    timeseries.add(new Day(2, 2, 2004), 131.80000000000001D);
    timeseries.add(new Day(3, 2, 2004), 139.59999999999999D);
    timeseries.add(new Day(4, 2, 2004), 142.90000000000001D);
    timeseries.add(new Day(5, 2, 2004), 138.69999999999999D);
    timeseries.add(new Day(6, 2, 2004), 137.30000000000001D);
    timeseries.add(new Day(7, 2, 2004), 143.90000000000001D);
    timeseries.add(new Day(8, 2, 2004), 139.80000000000001D);
    timeseries.add(new Day(9, 2, 2004), 137D);
    timeseries.add(new Day(10, 2, 2004), 132.80000000000001D);
    TimeZone timezone = TimeZone.getTimeZone("Pacific/Auckland");
    TimeSeriesCollection timeseriescollection = new TimeSeriesCollection(timezone);
    timeseriescollection.addSeries(timeseries);
    timeseriescollection.setXPosition(TimePeriodAnchor.MIDDLE);
    return timeseriescollection;
}

From source file:org.activequant.util.charting.Chart.java

/**
 * method to add a line series chart to the current chart. 
 * @param title/*from w  w w  .  java  2  s  .  c o m*/
 * @param dateAndValues
 */
public void addLineSeriesChart(String title, List<Tuple<TimeStamp, Double>> dateAndValues) {

    // creating a new jfree chart time series object. 
    final TimeSeries ts = new TimeSeries(title, Millisecond.class);

    // iterate over the incoming value tuples and add them.  
    for (Tuple<TimeStamp, Double> tuple : dateAndValues) {
        TimeSeriesDataItem item = new TimeSeriesDataItem(new Millisecond(tuple.getObject1().getDate()),
                tuple.getObject2());
        ts.addOrUpdate(item.getPeriod(), item.getValue());
    }

    datasets.add(ts);

    // 
    final TimeSeriesCollection dataset = new TimeSeriesCollection(ts);

    // add it to the chart plot. 
    final XYPlot plot1 = chart.getXYPlot();

    // disable all shape rendering. 
    final XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer();
    renderer.setDrawOutlines(false);
    renderer.setUseOutlinePaint(false);
    renderer.setShapesVisible(false);
    // finally add the data set to chart 
    plot1.setDataset(datasets.size(), dataset);
    plot1.setRenderer(datasets.size(), renderer);
}

From source file:edu.ucla.stat.SOCR.chart.demo.XYAreaChartDemo2.java

protected XYDataset createDataset(boolean isDemo) {
    if (isDemo) {
        TimeSeries series1 = new TimeSeries("Random 1");
        double value = 0.0;
        Day day = new Day();
        for (int i = 0; i < 200; i++) {
            value = value + Math.random() - 0.5;
            series1.add(day, value);/*from  ww  w.  j av  a2  s.  c om*/
            day = (Day) day.next();
        }

        TimeSeriesCollection dataset = new TimeSeriesCollection(series1);
        return dataset;
    } else {
        setArrayFromTable();

        if (independentVarLength != dependentVarLength) {
            JOptionPane.showMessageDialog(this, "The number of X and Y doesn't match!");
            resetChart();
            return null;
        }

        String[][] x = new String[xyLength][independentVarLength];
        double[][] y = new double[xyLength][dependentVarLength];
        int[][] skipy = new int[xyLength][dependentVarLength];

        for (int index = 0; index < independentVarLength; index++)
            for (int i = 0; i < xyLength; i++)
                x[i][index] = indepValues[i][index];

        for (int index = 0; index < dependentVarLength; index++)
            for (int i = 0; i < xyLength; i++) {
                if (depValues[i][index] == null || depValues[i][index].length() == 0)
                    skipy[i][index] = 1;
                else
                    y[i][index] = Double.parseDouble(depValues[i][index]);
            }

        TimeSeriesCollection dataset = new TimeSeriesCollection();
        TimeSeries series;

        for (int i = 0; i < independentVarLength; i++) {
            String serieName = independentHeaders[i];
            if (independentHeaders[i].lastIndexOf(":") != -1)
                serieName = independentHeaders[i].substring(0, independentHeaders[i].lastIndexOf(":"));
            series = new TimeSeries(serieName);
            for (int j = 0; j < xyLength; j++) {
                if (x[j][i] != null && skipy[j][i] != 1)
                    series.add(DateParser.parseDay(x[j][i]), y[j][i]);
                //System.out.println("adding :("+x[j][i]+","+y[j][i]+","+independentHeaders[i]+")" );
            }
            dataset.addSeries(series);
        }

        return dataset;
    }
}

From source file:LoggerGUI.DataLogger.java

public DataLogger(String title) {
    super(title);
    initialize();//  ww w. j  a  v a 2  s  .c  o  m

    final CombinedDomainXYPlot plot = new CombinedDomainXYPlot(new DateAxis("Time"));
    this.datasets = new TimeSeriesCollection[INPUT_COUNT];

    this.lastValue[0] = 100.0;
    this.lastValue[1] = 100.0;
    this.lastValue[2] = 100.0;
    this.lastValue[3] = 100.0;
       
        
        
       
        
    final TimeSeries s0 = new TimeSeries("A0", Millisecond.class);
    final TimeSeries s1 = new TimeSeries("A1", Millisecond.class);
    final TimeSeries s2 = new TimeSeries("A2", Millisecond.class);
    final TimeSeries s3 = new TimeSeries("A3", Millisecond.class);
        
        
        
    this.datasets[0] = new TimeSeriesCollection(s0);
    this.datasets[1] = new TimeSeriesCollection(s1);
    this.datasets[2] = new TimeSeriesCollection(s2);
    this.datasets[3] = new TimeSeriesCollection(s3);
       
        

    final NumberAxis rangeAxis = new NumberAxis("ADC Signal");

    rangeAxis.setAutoRangeIncludesZero(false);
    XYPlot subplot;

        
    XYLineAndShapeRenderer renderer =  new XYLineAndShapeRenderer(true,false);
    XYLineAndShapeRenderer renderer1 = new XYLineAndShapeRenderer(true,false);
    XYLineAndShapeRenderer renderer2 = new XYLineAndShapeRenderer(true,false);
    XYLineAndShapeRenderer renderer3 = new XYLineAndShapeRenderer(true,false);
        
    subplot= new XYPlot(
            new TimeSeriesCollection(), null, rangeAxis, new XYLineAndShapeRenderer(true,false)
    );
       
    plot.add(subplot);
       
        
        
    renderer.setBaseShapesVisible(false);
    renderer.setSeriesPaint(0, Color.red);
    subplot.setDataset(0,datasets[0]);
    subplot.setRenderer(0,renderer);
        
        
    renderer1.setBaseShapesVisible(false);
    renderer1.setSeriesPaint(0, Color.blue);
    subplot.setDataset(1,datasets[1]);
    subplot.setRenderer(1,renderer1);
        
        
    renderer2.setBaseShapesVisible(false);
    renderer2.setSeriesPaint(0, Color.black);
    subplot.setDataset(2,datasets[2]);
    subplot.setRenderer(2,renderer2);
        
    subplot.getRendererForDataset(subplot.getDataset(0)).setSeriesPaint(0, Color.red); 
    subplot.getRendererForDataset(subplot.getDataset(1)).setSeriesPaint(1, Color.blue);
    subplot.getRendererForDataset(subplot.getDataset(2)).setSeriesPaint(2, Color.black);
        
    renderer3.setBaseShapesVisible(false);
    renderer3.setSeriesPaint(0, Color.green);
    subplot.setDataset(3,datasets[3]);
    subplot.setRenderer(3,renderer3);
        
        
        
    final JFreeChart chart = new JFreeChart("Data Logger", plot);
    chart.setBorderPaint(Color.black);
    chart.setBorderVisible(true);
    chart.setBackgroundPaint(Color.white);
        
    plot.setBackgroundPaint(Color.lightGray);
    plot.setDomainGridlinePaint(Color.white);
    plot.setRangeGridlinePaint(Color.white);
    final ValueAxis axis = plot.getDomainAxis();
    axis.setAutoRange(true);
    axis.setFixedAutoRange(20000.0);  // 60 seconds

    
    final JPanel content = new JPanel(new BorderLayout());

    final ChartPanel chartPanel = new ChartPanel(chart);
    content.add(chartPanel);

    final JPanel buttonPanel = new JPanel(new FlowLayout());
        
    content.add(buttonPanel, BorderLayout.NORTH);
    chartPanel.setPreferredSize(new java.awt.Dimension(600, 600));
    chartPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
    setContentPane(content);
        
        
}

From source file:org.geoserver.monitor.web.ActivityChartBasePanel.java

BufferedDynamicImageResource queryAndRenderChart(Monitor monitor, Date[] range) {
    Query q = new Query();
    q.properties("startTime").between(range[0], range[1]);

    DataGatherer gatherer = new DataGatherer();
    monitor.query(q, gatherer);//  www.ja va 2s.  c  om

    HashMap<RegularTimePeriod, Integer> data = gatherer.getData();

    Class timeUnitClass = getTimePeriod(range[0]).getClass();
    TimeSeries series = new TimeSeries("foo", timeUnitClass);
    for (Map.Entry<RegularTimePeriod, Integer> d : data.entrySet()) {
        series.add(new TimeSeriesDataItem(d.getKey(), d.getValue()));
    }

    TimeSeriesCollection dataset = new TimeSeriesCollection(series);

    final JFreeChart chart = createTimeSeriesChart(getChartTitle(range),
            "Time (" + timeUnitClass.getSimpleName() + ")", "Requests", dataset);

    BufferedDynamicImageResource resource = new BufferedDynamicImageResource();
    resource.setImage(chart.createBufferedImage(700, 500));
    return resource;
}

From source file:eu.cassandra.platform.gui.GUI.java

public GUI() {
    //redirectSystemStreams();
    a = new ListenInstallationComboBox();
    installationCombo.setPreferredSize(new Dimension(300, 20));

    startButton.addActionListener(new ListenStartButton());
    exitButton.addActionListener(new ListenExitButton());
    projectFileField.addMouseListener(new ListenProjectFileField());

    logTextAreaScrollPane.setPreferredSize(new Dimension(400, 500));

    projectFileField.setPreferredSize(new Dimension(600, 20));
    //      projectFileField.setText(new File(Params.SIM_PROPS).getAbsolutePath());
    projectFileField.setText("");
    projectFileField.setEditable(false);

    f.setJMenuBar(menuBar);//  www  .j  av  a2s.c o  m

    menuFile.add(menuItemQuit);
    menuHelp.add(menuItemAbout);
    menuBar.add(menuFile);
    menuBar.add(menuHelp);

    statsTextArea.setFont(new Font("Tahoma", Font.BOLD, 12));

    TimeSeries series = new TimeSeries("");
    dataset = new TimeSeriesCollection(series);
    JFreeChart chart = createChart("Consumption", dataset);
    ChartPanel chartPanel = new ChartPanel(chart);
    graphScrollPane = new JScrollPane(chartPanel);

    buttonPanel.add(projectFileField);
    buttonPanel.add(startButton);
    buttonPanel.add(holdButton);
    buttonPanel.add(installationCombo);
    buttonPanel.add(exitButton);

    statsTextArea.setText("Statistics:\n");
    logTextArea.setText("Logs:\n");

    JSplitPane textAreaSplitPanel = new JSplitPane(JSplitPane.VERTICAL_SPLIT);

    textAreaSplitPanel.setDividerLocation((int) (Toolkit.getDefaultToolkit().getScreenSize().getHeight() / 2));
    textAreaSplitPanel.add(statsTextAreaScrollPane, JSplitPane.TOP);
    textAreaSplitPanel.add(logTextAreaScrollPane, JSplitPane.BOTTOM);

    JSplitPane mainSplitPanel = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
    mainSplitPanel.add(graphScrollPane, JSplitPane.LEFT);
    mainSplitPanel.add(textAreaSplitPanel, JSplitPane.RIGHT);
    mainSplitPanel.setDividerLocation((int) (Toolkit.getDefaultToolkit().getScreenSize().getWidth() / 1.5));

    f.getContentPane().setLayout(new BorderLayout());
    f.getContentPane().add(mainSplitPanel, BorderLayout.CENTER);
    f.getContentPane().add(buttonScrollPane, BorderLayout.SOUTH);

    f.addWindowListener(new ListenCloseWdw());
    menuItemQuit.addActionListener(new ListenMenuQuit());
}