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

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

Introduction

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

Prototype

public void addSeries(TimeSeries series) 

Source Link

Document

Adds a series to the collection and sends a DatasetChangeEvent to all registered listeners.

Usage

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

protected ChartPanel createPricingBehaviourMechanicsPanel(Currency currency, GoodType goodType) {
    TimeSeriesCollection timeSeriesCollection = new TimeSeriesCollection();

    for (PricingBehaviourNewPriceDecisionCause decisionCause : PricingBehaviourNewPriceDecisionCause.values()) {
        timeSeriesCollection.addSeries(ApplicationContext.getInstance().getModelRegistry()
                .getNationalEconomyModel(currency).pricingBehaviourModels
                        .get(goodType).pricingBehaviourPriceDecisionCauseModels.get(decisionCause)
                                .getTimeSeries());
    }/*ww w. j  av a  2  s . c  om*/

    timeSeriesCollection.addSeries(ApplicationContext.getInstance().getModelRegistry()
            .getNationalEconomyModel(currency).pricingBehaviourModels
                    .get(goodType).pricingBehaviourAveragePriceDecisionCauseModel.getTimeSeries());

    JFreeChart chart = ChartFactory.createTimeSeriesChart(goodType + " Pricing Behaviour Mechanics", "Date",
            "Budget Spent", (XYDataset) timeSeriesCollection, true, true, false);
    configureChart(chart);
    return new ChartPanel(chart);
}

From source file:Views.GraphView.java

public GraphView(RegularTimePeriod T, String title, double openPrice) {
    graphTitle = title;//from   w  ww  .ja v a2 s.co  m

    lastValueAsk = openPrice;
    lastValueBid = openPrice;
    lastValueExecuted = openPrice;

    newValueAsk = openPrice;
    newValueBid = openPrice;
    lastexectuednew = openPrice;

    this.BidValuePlot = new TimeSeries("Bid", Millisecond.class);
    this.AskValuePlot = new TimeSeries("Ask", Millisecond.class);
    this.VolumeBidPlot = new TimeSeries("Volume Bid", Millisecond.class);
    this.VolumeAskPlot = new TimeSeries("Volume Ask", Millisecond.class);
    this.ExecutedValuePlot = new TimeSeries("Last Executed", Millisecond.class);
    this.VolumeExecPlot = new TimeSeries("Volume Last Executed", Millisecond.class);

    this.Tdebut = T;
    final TimeSeriesCollection dataset = new TimeSeriesCollection();
    dataset.addSeries(BidValuePlot);
    dataset.addSeries(AskValuePlot);
    this.BidValuePlot.add(Tdebut, lastValueBid);
    this.AskValuePlot.add(Tdebut, lastValueAsk);
    dataset2 = new TimeSeriesCollection();
    dataset2.addSeries(VolumeBidPlot);
    dataset2.addSeries(VolumeAskPlot);
    this.VolumeBidPlot.add(Tdebut, lastVolumeBid);
    this.VolumeAskPlot.add(Tdebut, lastVolumeAsk);

    dataset3 = new TimeSeriesCollection();
    dataset3.addSeries(ExecutedValuePlot);
    dataset4 = new TimeSeriesCollection();

    dataset4.addSeries(VolumeExecPlot);
    chart = createChart(dataset);

    //Sets background color of chart
    chart.setBackgroundPaint(Color.LIGHT_GRAY);
    chartPanel = new ChartPanel(chart);

    timer = new Timer(0, this);
    timer.start();

}

From source file:msec.org.Tools.java

private static XYDataset createDataset(OneDayValue[] oneDayValues) {
    TimeSeriesCollection timeseriescollection = new TimeSeriesCollection();

    for (int j = 0; j < oneDayValues.length; j++) {

        TimeSeries timeseries = new TimeSeries(oneDayValues[j].getDate());

        Minute current = new Minute(gc.getTime());
        int[] data = oneDayValues[j].getValues();

        int len = data.length - 1;
        //if it is today... check actual length for data
        if (oneDayValues[j].getDate().equals(Tools.nowString("yyyyMMdd"))) {
            for (int i = len; i >= 0; i--) {
                if (data[i] != 0) {
                    len = i;//from   www.j  a v a2 s. c  om
                    break;
                }
            }
        }

        for (int i = 0; i < len; ++i) {
            timeseries.add(current, (double) (data[i]));
            current = (Minute) current.next();
        }
        timeseriescollection.addSeries(timeseries);
    }

    return timeseriescollection;
}

From source file:test.integ.be.fedict.performance.util.PerformanceResultDialog.java

private JFreeChart getPerformanceChart(int intervalSize, List<PerformanceData> performance,
        int expectedRevoked) {
    TimeSeries series = new TimeSeries("Success");
    TimeSeries revokedSeries = new TimeSeries("Revoked");
    TimeSeries failureSeries = new TimeSeries("Failures");

    performance.remove(performance.size() - 1);
    if (performance.isEmpty()) {
        JOptionPane.showMessageDialog(null, "test did not run long enough");
        return null;
    }// w  w w  .  ja  v a  2 s  .  co m

    JFreeChart chart;

    int totalCount = 0;
    int totalRevoked = 0;
    int totalFailures = 0;

    for (PerformanceData performanceEntry : performance) {
        series.add(new Second(performanceEntry.getDate()), performanceEntry.getCount());
        totalCount += performanceEntry.getCount();

        revokedSeries.add(new Second(performanceEntry.getDate()), performanceEntry.getRevoked());
        totalRevoked += performanceEntry.getRevoked();

        failureSeries.add(new Second(performanceEntry.getDate()), performanceEntry.getFailures());
        totalFailures += performanceEntry.getFailures();
    }

    TimeSeriesCollection dataset = new TimeSeriesCollection();
    dataset.addSeries(series);
    dataset.addSeries(revokedSeries);
    dataset.addSeries(failureSeries);
    chart = ChartFactory.createTimeSeriesChart("eID Trust Service Performance History",
            "Time (interval size " + intervalSize + " msec)", "Number of XKMS requests", dataset, true, false,
            false);

    chart.addSubtitle(new TextTitle(performance.get(0).getDate().toString() + " - "
            + performance.get(performance.size() - 1).getDate().toString()));

    TextTitle info = new TextTitle("Total number of successful requests: " + totalCount);
    info.setTextAlignment(HorizontalAlignment.LEFT);
    info.setPosition(RectangleEdge.BOTTOM);
    chart.addSubtitle(info);

    TextTitle info2 = new TextTitle(
            "Total number of revoked: " + totalRevoked + " expected=" + expectedRevoked);
    info2.setPosition(RectangleEdge.BOTTOM);
    info2.setTextAlignment(HorizontalAlignment.LEFT);
    chart.addSubtitle(info2);

    TextTitle info3 = new TextTitle("Total number of failures: " + totalFailures);
    info3.setPosition(RectangleEdge.BOTTOM);
    info3.setTextAlignment(HorizontalAlignment.LEFT);
    chart.addSubtitle(info3);

    chart.setBackgroundPaint(Color.WHITE);
    XYPlot plot = chart.getXYPlot();
    plot.setBackgroundPaint(Color.WHITE);
    DateAxis axis = (DateAxis) plot.getDomainAxis();
    axis.setDateFormatOverride(new SimpleDateFormat("HH:mm:ss"));
    ValueAxis valueAxis = plot.getRangeAxis();
    valueAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
    XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer();
    plot.setRangeGridlinePaint(Color.black);
    plot.setDomainGridlinePaint(Color.black);
    plot.setRenderer(renderer);

    return chart;
}

From source file:org.mwc.debrief.multipath2.MultiPathView.java

@Override
public void display(final TimeSeries measured, final TimeSeries calculated) {
    // collate the data
    final TimeSeriesCollection coll = new TimeSeriesCollection();
    coll.addSeries(measured);
    coll.addSeries(calculated);//from  w  ww .j av a  2  s  .c  o m

    // put the series onto the chart
    _thePlot.setDataset(coll);
}

From source file:org.yccheok.jstock.gui.SellPortfolioTimeChartJDialog.java

private JFreeChart createChart(String name) {
    final JStockOptions jStockOptions = MainFrame.getInstance().getJStockOptions();
    final boolean isFeeCalculationEnabled = jStockOptions.isFeeCalculationEnabled();
    final boolean isPenceToPoundConversionEnabled = jStockOptions.isPenceToPoundConversionEnabled();

    final Portfolio portfolio = (Portfolio) portfolioTreeTableModel.getRoot();
    final int count = portfolio.getChildCount();

    final List<DataEx> dataExs = new ArrayList<DataEx>();

    for (int i = 0; i < count; i++) {
        TransactionSummary transactionSummary = (TransactionSummary) portfolio.getChildAt(i);

        if (transactionSummary.getChildCount() <= 0) {
            continue;
        }/* w ww  .j  a  v  a2  s .co  m*/

        Transaction transaction = (Transaction) transactionSummary.getChildAt(0);
        final Date date = transaction.getDate().getTime();

        if (name.equals(cNames[2]) || name.equals(cNames[3])) {
            this.isCumulativeChart = true;
        } else {
            this.isCumulativeChart = false;
        }

        /* Should use reflection technology. */
        if (name.equals(cNames[0]) || name.equals(cNames[2])) {
            if (isPenceToPoundConversionEnabled == false) {
                if (isFeeCalculationEnabled) {
                    dataExs.add(DataEx.newInstance(date,
                            portfolioTreeTableModel.getNetGainLossValue(transactionSummary)));
                } else {
                    dataExs.add(DataEx.newInstance(date,
                            portfolioTreeTableModel.getGainLossValue(transactionSummary)));
                }
            } else {
                if (isFeeCalculationEnabled) {
                    dataExs.add(DataEx.newInstance(date,
                            portfolioTreeTableModel.getNetGainLossValue(transactionSummary) / 100.0));
                } else {
                    dataExs.add(DataEx.newInstance(date,
                            portfolioTreeTableModel.getGainLossValue(transactionSummary) / 100.0));
                }
            }
        } else if (name.equals(cNames[1]) || name.equals(cNames[3])) {
            if (isPenceToPoundConversionEnabled == false) {
                if (isFeeCalculationEnabled) {
                    dataExs.add(DataEx.newInstance(date,
                            -portfolioTreeTableModel.getNetGainLossValue(transactionSummary)));
                } else {
                    dataExs.add(DataEx.newInstance(date,
                            -portfolioTreeTableModel.getGainLossValue(transactionSummary)));
                }
            } else {
                if (isFeeCalculationEnabled) {
                    dataExs.add(DataEx.newInstance(date,
                            -portfolioTreeTableModel.getNetGainLossValue(transactionSummary) / 100.0));
                } else {
                    dataExs.add(DataEx.newInstance(date,
                            -portfolioTreeTableModel.getGainLossValue(transactionSummary) / 100.0));
                }
            }
        }
    }

    Collections.sort(dataExs);
    TimeSeries series = new TimeSeries(name);
    double totalValue = 0;
    for (DataEx dataEx : dataExs) {
        double value = dataEx.value;
        if (!this.isCumulativeChart && series.getValue(new Day(dataEx.date)) != null) {
            value += series.getValue(new Day(dataEx.date)).doubleValue();
        }

        if (this.isCumulativeChart) {
            totalValue += value;
            series.addOrUpdate(new Day(dataEx.date), totalValue);
        } else {
            series.addOrUpdate(new Day(dataEx.date), value);
        }

    }

    TimeSeriesCollection dataset = new TimeSeriesCollection();
    dataset.addSeries(series);

    JFreeChart chart = ChartFactory.createTimeSeriesChart(name, "date", null, dataset, false, true, false);

    ValueMarker marker = new ValueMarker(0);
    marker.setPaint(Color.black);

    XYPlot plot = (XYPlot) chart.getXYPlot();
    plot.addRangeMarker(marker);

    return chart;

}

From source file:org.codehaus.mojo.chronos.chart.SummaryGCChartSource.java

public JFreeChart getChart(ResourceBundle bundle, ReportConfig config) {
    String beforeLabel = bundle.getString("chronos.label.gc.before");
    String afterLabel = bundle.getString("chronos.label.gc.after");
    TimeSeriesCollection dataset1 = new TimeSeriesCollection();
    TimeSeries heapBeforeSeries = new TimeSeries(beforeLabel, Millisecond.class);
    samples.extractHeapBefore(heapBeforeSeries);
    TimeSeries heapAfterSeries = new TimeSeries(afterLabel, Millisecond.class);
    samples.extractHeapAfter(heapAfterSeries);

    dataset1.addSeries(heapBeforeSeries);
    dataset1.addSeries(heapAfterSeries);
    TimeSeriesCollection dataset = dataset1;

    String title = bundle.getString("chronos.label.gc");
    String timeLabel = bundle.getString("chronos.label.gc.time");
    String valueLabel = bundle.getString("chronos.label.gc.mem");
    JFreeChart chart = ChartFactory.createTimeSeriesChart(title, timeLabel, valueLabel, dataset, true, true,
            false);//  w ww  . j av a  2  s  . co  m
    ChartUtil.setupXYPlot(chart, new SimpleDateFormat("HH:mm:ss"));
    return chart;
}

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);
        dataset.addSeries(series2);//w w  w.j  a v  a2s.  co m
        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;

    }
}

From source file:org.softinica.maven.jmeter.report.analyser.ThroughputAnalyzer.java

@Override
protected JFreeChart createChart(PageDefinition definition, Input input) {
    Map<String, Multiset<Long>> allSeries = new HashMap<String, Multiset<Long>>();
    for (Sample sample : input.getSamples()) {
        Multiset<Long> rps = allSeries.get(sample.getLabel());
        if (rps == null) {
            rps = TreeMultiset.create();
            allSeries.put(sample.getLabel(), rps);
        }//from  w ww. j a  va  2 s.  c  o m
        rps.add(((sample.getTimestamp() + (long) sample.getValue()) / 1000) * 1000);
    }
    TimeSeriesCollection dataset = new TimeSeriesCollection();
    for (String label : allSeries.keySet()) {
        Multiset<Long> rps = allSeries.get(label);
        TimeSeries series = new TimeSeries(label);
        for (Long key : rps) {
            series.addOrUpdate(new Second(new Date(key)), rps.count(key));
        }
        dataset.addSeries(series);
    }

    return ChartFactory.createTimeSeriesChart(definition.getTitle(), "Time", "Requests/second", dataset);
}

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

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

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

    JFreeChart chart = ChartFactory.createTimeSeriesChart("Consumption & Saving Rate", "Date",
            "Consumption & Saving Rate", timeSeriesCollection, true, true, false);
    configureChart(chart);//from ww w  . java2s .co  m
    return new ChartPanel(chart);
}