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() 

Source Link

Document

Constructs an empty dataset, tied to the default timezone.

Usage

From source file:eu.hydrologis.jgrass.charting.impl.JGrassXYTimeBarChart.java

/**
 * A line chart creator basing on series made up two values per row. More series, independing
 * one from the other are supported.//ww w. j ava  2s. co m
 * 
 * @param chartValues - a hashmap containing as keys the name of the series and as values the
 *        double[][] representing the data. In this case the x value is assumed to ge a date.
 *        Important: the data matrix has to be passed as two rows (not two columns)
 * @param barWidth TODO
 */
public JGrassXYTimeBarChart(LinkedHashMap<String, double[][]> chartValues, Class<RegularTimePeriod> timeClass,
        double barWidth) {
    try {
        chartSeries = new TimeSeries[chartValues.size()];

        constructor = timeClass.getConstructor(Date.class);

        final Iterator<String> it = chartValues.keySet().iterator();
        int count = 0;
        while (it.hasNext()) {
            final String key = it.next();
            final double[][] values = chartValues.get(key);

            chartSeries[count] = new TimeSeries(key, timeClass);
            for (int i = 0; i < values[0].length; i++) {
                // important: the data matrix has to be passed as two rows (not
                // two columns)
                chartSeries[count].add(constructor.newInstance(new Date((long) values[0][i])), values[1][i]);
            }
            count++;
        }

        lineDataset = new TimeSeriesCollection();
        for (int i = 0; i < chartSeries.length; i++) {
            lineDataset.addSeries(chartSeries[i]);
        }
        lineDataset.setXPosition(TimePeriodAnchor.MIDDLE);

        if (barWidth != -1)
            dataset = new XYBarDataset(lineDataset, barWidth);
    } catch (Exception e) {
        ChartPlugin.log("ChartPlugin", e); //$NON-NLS-1$
    }

}

From source file:org.jfree.data.time.TimeSeriesCollectionTest.java

/**
 * Tests the remove series method.//from w w w  .  ja  va  2  s. c o  m
 */
@Test
public void testRemoveSeries() {
    TimeSeriesCollection c1 = new TimeSeriesCollection();

    TimeSeries s1 = new TimeSeries("Series 1");
    TimeSeries s2 = new TimeSeries("Series 2");
    TimeSeries s3 = new TimeSeries("Series 3");
    TimeSeries s4 = new TimeSeries("Series 4");

    c1.addSeries(s1);
    c1.addSeries(s2);
    c1.addSeries(s3);
    c1.addSeries(s4);

    c1.removeSeries(s3);

    TimeSeries s = c1.getSeries(2);
    boolean b1 = s.equals(s4);
    assertTrue(b1);
}

From source file:compecon.dashboard.panel.StatesPanel.java

protected ChartPanel createGovernmentTransfersPanel(Currency currency) {
    TimeSeriesCollection timeSeriesCollection = new TimeSeriesCollection();

    timeSeriesCollection.addSeries(ApplicationContext.getInstance().getModelRegistry()
            .getNationalEconomyModel(currency).householdsModel.governmentTransfersModel.getTimeSeries());

    JFreeChart chart = ChartFactory.createTimeSeriesChart("Government Transfers", "Date",
            "Government Transfers", (XYDataset) timeSeriesCollection, true, true, false);
    configureChart(chart);/*  w w  w  . j  a  v a 2s.c o  m*/
    return new ChartPanel(chart);
}

From source file:tools.descartes.bungee.chart.ChartGenerator.java

public static XYPlot allocationPlot(DemandSupplyContainer container) {
    final TimeSeriesCollection dataset = new TimeSeriesCollection();
    dataset.addSeries(createTimeSeries(container.getDemand()));
    for (SupplySeries supplySeries : container.getAllSupplies()) {
        if (container.getAllSupplies().size() == 1 || (supplySeries.getType() != SupplySeries.TYPE.VM_COMPLETED
                && supplySeries.getType() != SupplySeries.TYPE.VM_SCHEDULED
                && supplySeries.getType() != SupplySeries.TYPE.MONITORED)) {
            dataset.addSeries(createTimeSeries(supplySeries));
        }//  w ww  .java  2s  .c om

    }
    return createAllocationPlot(dataset);
}

From source file:com.jbombardier.reports.ReportGenerator.java

private static void generatePathView(File folder, String phase, String distinctPath,
        List<CapturedStatistic> capturedStatistics) {

    HTMLBuilder2 builder = new HTMLBuilder2();

    builder.getHead().css("box.css");
    builder.getHead().css("table.css");

    HTMLBuilder2.Element bodyx = builder.getBody();

    final HTMLBuilder2.Element content = bodyx.div("wide-box");

    TimeSeries series = new TimeSeries(distinctPath);
    TimeSeriesCollection data = new TimeSeriesCollection();
    data.addSeries(series);/* www .  ja v  a2  s .c  om*/

    NumberFormat nf = NumberFormat.getInstance();

    try {
        for (CapturedStatistic capturedStatistic : capturedStatistics) {
            if (capturedStatistic.getPath().equals(distinctPath)) {
                series.addOrUpdate(new Second(new Date(capturedStatistic.getTime())),
                        nf.parse(capturedStatistic.getValue()));
            }
        }
    } catch (ParseException nfe) {
        // Skip this one, its not numeric
    }

    if (series.getItemCount() > 0) {
        final String imageName = StringUtils.format("phase-{}-path-{}.png", phase,
                distinctPath.replace('/', '-'));
        content.image(imageName);

        final File file = new File(folder, imageName);
        render(StringUtils.format("phase-{}-path-{}.html", phase, distinctPath.replace('/', '-')), data, file);
    }

    builder.toFile(new File(folder,
            StringUtils.format("phase-{}-path-{}.html", phase, distinctPath.replace('/', '-'))));

}

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

private static XYDataset createDataset() {
    TimeSeries timeseries = new TimeSeries("L&G European Index Trust");
    timeseries.add(new Month(2, 2001), 181.80000000000001D);
    timeseries.add(new Month(3, 2001), 167.30000000000001D);
    timeseries.add(new Month(4, 2001), 153.80000000000001D);
    timeseries.add(new Month(5, 2001), 167.59999999999999D);
    timeseries.add(new Month(6, 2001), 158.80000000000001D);
    timeseries.add(new Month(7, 2001), 148.30000000000001D);
    timeseries.add(new Month(8, 2001), 153.90000000000001D);
    timeseries.add(new Month(9, 2001), 142.69999999999999D);
    timeseries.add(new Month(10, 2001), 123.2D);
    timeseries.add(new Month(11, 2001), 131.80000000000001D);
    timeseries.add(new Month(12, 2001), 139.59999999999999D);
    timeseries.add(new Month(1, 2002), 142.90000000000001D);
    timeseries.add(new Month(2, 2002), 138.69999999999999D);
    timeseries.add(new Month(3, 2002), 137.30000000000001D);
    timeseries.add(new Month(4, 2002), 143.90000000000001D);
    timeseries.add(new Month(5, 2002), 139.80000000000001D);
    timeseries.add(new Month(6, 2002), 137D);
    timeseries.add(new Month(7, 2002), 132.80000000000001D);
    TimeSeries timeseries1 = new TimeSeries("L&G UK Index Trust");
    timeseries1.add(new Month(2, 2001), 129.59999999999999D);
    timeseries1.add(new Month(3, 2001), 123.2D);
    timeseries1.add(new Month(4, 2001), 117.2D);
    timeseries1.add(new Month(5, 2001), 124.09999999999999D);
    timeseries1.add(new Month(6, 2001), 122.59999999999999D);
    timeseries1.add(new Month(7, 2001), 119.2D);
    timeseries1.add(new Month(8, 2001), 116.5D);
    timeseries1.add(new Month(9, 2001), 112.7D);
    timeseries1.add(new Month(10, 2001), 101.5D);
    timeseries1.add(new Month(11, 2001), 106.09999999999999D);
    timeseries1.add(new Month(12, 2001), 110.3D);
    timeseries1.add(new Month(1, 2002), 111.7D);
    timeseries1.add(new Month(2, 2002), 111D);
    timeseries1.add(new Month(3, 2002), 109.59999999999999D);
    timeseries1.add(new Month(4, 2002), 113.2D);
    timeseries1.add(new Month(5, 2002), 111.59999999999999D);
    timeseries1.add(new Month(6, 2002), 108.8D);
    timeseries1.add(new Month(7, 2002), 101.59999999999999D);
    TimeSeriesCollection timeseriescollection = new TimeSeriesCollection();
    timeseriescollection.addSeries(timeseries);
    timeseriescollection.addSeries(timeseries1);
    return timeseriescollection;
}

From source file:eu.hydrologis.jgrass.charting.impl.JGrassXYTimeLineChart.java

/**
 * A line chart creator basing on series made up two values per row. More series, independing
 * one from the other are supported.//  ww w  . ja v  a2 s.com
 * 
 * @param chartValues - a hashmap containing as keys the name of the series and as values the
 *        double[][] representing the data. In this case the x value is assumed to ge a date.
 *        Important: the data matrix has to be passed as two rows (not two columns)
 */
public JGrassXYTimeLineChart(LinkedHashMap<String, double[][]> chartValues,
        Class<RegularTimePeriod> timeClass) {
    try {
        chartSeries = new TimeSeries[chartValues.size()];

        constructor = timeClass.getConstructor(Date.class);

        final Iterator<String> it = chartValues.keySet().iterator();
        int count = 0;
        while (it.hasNext()) {
            final String key = it.next();
            final double[][] values = chartValues.get(key);

            chartSeries[count] = new TimeSeries(key, timeClass);
            for (int i = 0; i < values[0].length; i++) {
                // important: the data matrix has to be passed as two rows (not
                // two columns)
                double val = values[1][i];
                if (isNovalue(val))
                    continue;
                chartSeries[count].add(constructor.newInstance(new Date((long) values[0][i])), val);
            }
            count++;
        }

        lineDataset = new TimeSeriesCollection();
        for (int i = 0; i < chartSeries.length; i++) {
            lineDataset.addSeries(chartSeries[i]);
        }
        lineDataset.setXPosition(TimePeriodAnchor.MIDDLE);
    } catch (Exception e) {
        ChartPlugin.log("ChartPlugin problem", e); //$NON-NLS-1$
    }

}

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

public XYDataset createDataset() {
    TimeSeries timeseries = new TimeSeries("L&G European Index Trust");
    timeseries.add(new Month(2, 2001), 181.80000000000001D);
    timeseries.add(new Month(3, 2001), 167.30000000000001D);
    timeseries.add(new Month(4, 2001), 153.80000000000001D);
    timeseries.add(new Month(5, 2001), 167.59999999999999D);
    timeseries.add(new Month(6, 2001), 158.80000000000001D);
    timeseries.add(new Month(7, 2001), 148.30000000000001D);
    timeseries.add(new Month(8, 2001), 153.90000000000001D);
    timeseries.add(new Month(9, 2001), 142.69999999999999D);
    timeseries.add(new Month(10, 2001), 123.2D);
    timeseries.add(new Month(11, 2001), 131.80000000000001D);
    timeseries.add(new Month(12, 2001), 139.59999999999999D);
    timeseries.add(new Month(1, 2002), 142.90000000000001D);
    timeseries.add(new Month(2, 2002), 138.69999999999999D);
    timeseries.add(new Month(3, 2002), 137.30000000000001D);
    timeseries.add(new Month(4, 2002), 143.90000000000001D);
    timeseries.add(new Month(5, 2002), 139.80000000000001D);
    timeseries.add(new Month(6, 2002), 137D);
    timeseries.add(new Month(7, 2002), 132.80000000000001D);
    TimeSeries timeseries1 = new TimeSeries("L&G UK Index Trust");
    timeseries1.add(new Month(2, 2001), 129.59999999999999D);
    timeseries1.add(new Month(3, 2001), 123.2D);
    timeseries1.add(new Month(4, 2001), 117.2D);
    timeseries1.add(new Month(5, 2001), 124.09999999999999D);
    timeseries1.add(new Month(6, 2001), 122.59999999999999D);
    timeseries1.add(new Month(7, 2001), 119.2D);
    timeseries1.add(new Month(8, 2001), 116.5D);
    timeseries1.add(new Month(9, 2001), 112.7D);
    timeseries1.add(new Month(10, 2001), 101.5D);
    timeseries1.add(new Month(11, 2001), 106.09999999999999D);
    timeseries1.add(new Month(12, 2001), 110.3D);
    timeseries1.add(new Month(1, 2002), 111.7D);
    timeseries1.add(new Month(2, 2002), 111D);
    timeseries1.add(new Month(3, 2002), 109.59999999999999D);
    timeseries1.add(new Month(4, 2002), 113.2D);
    timeseries1.add(new Month(5, 2002), 111.59999999999999D);
    timeseries1.add(new Month(6, 2002), 108.8D);
    timeseries1.add(new Month(7, 2002), 101.59999999999999D);
    TimeSeriesCollection timeseriescollection = new TimeSeriesCollection();
    timeseriescollection.addSeries(timeseries);
    timeseriescollection.addSeries(timeseries1);
    timeseriescollection.setXPosition(TimePeriodAnchor.MIDDLE);
    return timeseriescollection;
}

From source file:org.n52.oxf.render.sos.TimeSeriesChartRenderer.java

public JFreeChart renderChart(OXFFeatureCollection observationCollection, ParameterContainer paramCon) {
    String[] observedProperties;/*  w w w.  ja  v  a  2 s  .c  om*/
    // which observedProperty has been used?:
    ParameterShell observedPropertyPS = paramCon.getParameterShellWithServiceSidedName("observedProperty");
    if (observedPropertyPS.hasMultipleSpecifiedValues()) {
        observedProperties = observedPropertyPS.getSpecifiedTypedValueArray(String[].class);
    } else if (observedPropertyPS.hasSingleSpecifiedValue()) {
        observedProperties = new String[] { (String) observedPropertyPS.getSpecifiedValue() };
    } else {
        throw new IllegalArgumentException("no observedProperties found.");
    }

    phenomenon = observedProperties[0];

    String[] foiIdArray = paramCon.getParameterShellWithServiceSidedName("featureOfInterest")
            .getSpecifiedTypedValueArray(String[].class);

    TimeSeriesCollection dataset = new TimeSeriesCollection();

    ObservationSeriesCollection tuples4FOI = new ObservationSeriesCollection(observationCollection, foiIdArray,
            observedProperties, true);

    for (String featureID : foiIdArray) {
        Map<ITimePosition, ObservedValueTuple> tupleMap = tuples4FOI.getAllTuples(featureID);

        // for each selected feature construct a new TimeSeries:
        TimeSeries timeSeries = new TimeSeries(featureID, Second.class);

        if (tupleMap != null) {

            for (ITimePosition timePos : tupleMap.keySet()) {
                ObservedValueTuple tuple = tupleMap.get(timePos);

                double measurement = (Double) tuple.getValue(0);

                timeSeries.add(new Second(new Float(timePos.getSecond()).intValue(), timePos.getMinute(),
                        timePos.getHour(), timePos.getDay(), timePos.getMonth(),
                        new Long(timePos.getYear()).intValue()), measurement);
            }
            dataset.addSeries(timeSeries);
        }
    }
    dataset.setDomainIsPointsInTime(true);

    return drawChart(dataset);
}

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

protected IntervalXYDataset createDataset(boolean isDemo) {
    if (isDemo) {
        TimeSeries series1 = new TimeSeries("Series 1", Day.class);
        series1.add(new Day(1, 1, 2003), 54.3);
        series1.add(new Day(2, 1, 2003), 20.3);
        series1.add(new Day(3, 1, 2003), 43.4);
        series1.add(new Day(4, 1, 2003), -12.0);

        TimeSeries series2 = new TimeSeries("Series 2", Day.class);
        series2.add(new Day(1, 1, 2003), 8.0);
        series2.add(new Day(2, 1, 2003), 16.0);
        series2.add(new Day(3, 1, 2003), 21.0);
        series2.add(new Day(4, 1, 2003), 5.0);

        TimeSeriesCollection dataset = new TimeSeriesCollection();
        //dataset.setDomainIsPointsInTime(false);
        dataset.addSeries(series1);//from w  w w .  ja  v a  2  s. c  o m
        dataset.addSeries(series2);
        return dataset;
    } else {
        setArrayFromTable();
        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]);
            }

        // create the dataset... 
        TimeSeriesCollection collection = new TimeSeriesCollection();
        TimeSeries series;

        for (int ind = 0; ind < independentVarLength; ind++) {
            int start_ind = independentHeaders[ind].lastIndexOf(":");
            if (start_ind < 0)
                start_ind = 0;

            String serieName = independentHeaders[ind].substring(0, start_ind);
            if (serieName.length() == 0)
                serieName = "Serie" + ind;

            series = new TimeSeries(serieName, Day.class);
            //TimeSeries("Executions", "Year", "Count", Year.class);

            for (int i = 0; i < xyLength; i++) {
                if (x[i][ind] != null && skipy[i][ind] != 1) {
                    series.add(DateParser.parseDay(x[i][ind]), y[i][ind]);
                }
            }
            //collection.setDomainIsPointsInTime(false);
            collection.addSeries(series);
        }
        return collection;

    }
}