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

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

Introduction

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

Prototype

public TimeSeries(Comparable name) 

Source Link

Document

Creates a new (empty) time series.

Usage

From source file:it.marcoberri.mbmeteo.action.chart.GetMinAndMax.java

/**
 * Processes requests for both HTTP//w ww.  j  a  v  a  2  s.com
 * <code>GET</code> and
 * <code>POST</code> methods.
 *
 * @param request servlet request
 * @param response servlet response
 * @throws ServletException if a servlet-specific error occurs
 * @throws IOException if an I/O error occurs
 */
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    log.debug("start : " + this.getClass().getName());

    final HashMap<String, String> params = getParams(request.getParameterMap());
    final Integer dimy = Default.toInteger(params.get("dimy"), 600);
    final Integer dimx = Default.toInteger(params.get("dimx"), 800);
    final String from = Default.toString(params.get("from") + " 00:00:00", "1970-01-01 00:00:00");
    final String to = Default.toString(params.get("to") + " 23:59:00", "2030-01-01 23:59:00");
    final String field = Default.toString(params.get("field"), "outdoorTemperature");
    final String period = Default.toString(params.get("period"), "day");

    request.getSession().setAttribute("from", params.get("from"));
    request.getSession().setAttribute("to", params.get("to"));

    final String cacheKey = getCacheKey(params);

    if (cacheReadEnable) {

        final Query q = ds.find(Cache.class);
        q.filter("cacheKey", cacheKey).filter("servletName", this.getClass().getName());

        final Cache c = (Cache) q.get();

        if (c == null) {
            log.info("cacheKey:" + cacheKey + " on servletName: " + this.getClass().getName() + " not found");
        }

        if (c != null) {
            final GridFSDBFile imageForOutput = MongoConnectionHelper.getGridFS()
                    .findOne(new ObjectId(c.getGridId()));
            if (imageForOutput != null) {
                ds.save(c);

                try {
                    response.setHeader("Content-Length", "" + imageForOutput.getLength());
                    response.setHeader("Content-Disposition",
                            "inline; filename=\"" + imageForOutput.getFilename() + "\"");
                    final OutputStream out = response.getOutputStream();
                    final InputStream in = imageForOutput.getInputStream();
                    final byte[] content = new byte[(int) imageForOutput.getLength()];
                    in.read(content);
                    out.write(content);
                    in.close();
                    out.close();
                    return;
                } catch (Exception e) {
                    log.error(e);
                }

            } else {
                log.error("file not in db");
            }
        }
    }

    final String formatIn = getFormatIn(period);
    final String formatOut = getFormatOut(period);

    final Query q = ds.createQuery(MapReduceMinMax.class).disableValidation();

    final Date dFrom = DateTimeUtil.getDate("yyyy-MM-dd hh:mm:ss", from);
    final Date dTo = DateTimeUtil.getDate("yyyy-MM-dd hh:mm:ss", to);

    final List<Date> datesIn = getRangeDate(dFrom, dTo);
    final HashSet<String> datesInString = new HashSet<String>();

    for (Date d : datesIn) {
        datesInString.add(DateTimeUtil.dateFormat(formatIn, d));
    }

    if (datesIn != null && !datesIn.isEmpty()) {
        q.filter("_id in", datesInString);
    }
    q.order("_id");

    final List<MapReduceMinMax> mapReduceResult = q.asList();
    final TimeSeries serieMin = new TimeSeries("Min");
    final TimeSeries serieMax = new TimeSeries("Max");

    for (MapReduceMinMax m : mapReduceResult) {
        try {

            final Date tmpDate = DateTimeUtil.getDate(formatIn, m.getId().toString());
            if (tmpDate == null) {
                continue;
            }

            final Millisecond t = new Millisecond(tmpDate);

            ChartEnumMinMaxHelper chartEnum = ChartEnumMinMaxHelper.getByFieldAndType(field, "min");
            Method method = m.getClass().getMethod(chartEnum.getMethod());
            Number n = (Number) method.invoke(m);
            serieMin.add(t, n);

            chartEnum = ChartEnumMinMaxHelper.getByFieldAndType(field, "max");
            method = m.getClass().getMethod(chartEnum.getMethod());
            n = (Number) method.invoke(m);
            serieMax.add(t, n);

        } catch (IllegalAccessException ex) {
            log.error(ex);
        } catch (IllegalArgumentException ex) {
            log.error(ex);
        } catch (InvocationTargetException ex) {
            log.error(ex);
        } catch (NoSuchMethodException ex) {
            log.error(ex);
        } catch (SecurityException ex) {
            log.error(ex);
        }
    }

    final ChartEnumMinMaxHelper chartData = ChartEnumMinMaxHelper.getByFieldAndType(field, "min");

    final TimeSeriesCollection dataset = new TimeSeriesCollection();
    dataset.addSeries(serieMin);
    dataset.addSeries(serieMax);

    final JFreeChart chart = ChartFactory.createTimeSeriesChart("Max/Min", "", chartData.getUm(), dataset, true,
            false, false);
    final XYPlot plot = (XYPlot) chart.getPlot();
    final DateAxis axis = (DateAxis) plot.getDomainAxis();
    axis.setDateFormatOverride(new SimpleDateFormat(formatOut));

    axis.setVerticalTickLabels(true);

    if (field.toUpperCase().indexOf("PRESSURE") != -1) {
        plot.getRangeAxis().setRange(chartPressureMin, chartPressureMax);
    }

    final File f = File.createTempFile("mbmeteo", ".jpg");
    ChartUtilities.saveChartAsJPEG(f, chart, dimx, dimy);

    try {

        if (cacheWriteEnable) {
            final GridFSInputFile gfsFile = MongoConnectionHelper.getGridFS().createFile(f);
            gfsFile.setFilename(f.getName());
            gfsFile.save();

            final Cache c = new Cache();
            c.setServletName(this.getClass().getName());
            c.setCacheKey(cacheKey);
            c.setGridId(gfsFile.getId().toString());

            ds.save(c);

        }

        response.setContentType("image/jpeg");
        response.setHeader("Content-Length", "" + f.length());
        response.setHeader("Content-Disposition", "inline; filename=\"" + f.getName() + "\"");
        final OutputStream out = response.getOutputStream();
        final FileInputStream in = new FileInputStream(f.toString());
        final int size = in.available();
        final byte[] content = new byte[size];
        in.read(content);
        out.write(content);
        in.close();
        out.close();
    } catch (Exception e) {
        log.error(e);
    } finally {
        f.delete();
    }

}

From source file:org.projectforge.plugins.liquidityplanning.LiquidityChartBuilder.java

/**
 * @param forecast//  ww w. ja va  2  s.c  o m
 * @param settings (next days)
 * @return
 */
public JFreeChart createBarChart(final LiquidityForecast forecast, final LiquidityForecastSettings settings) {
    Validate.isTrue(settings.getNextDays() > 0 && settings.getNextDays() < 500);
    final LiquidityForecastCashFlow cashFlow = new LiquidityForecastCashFlow(forecast, settings.getNextDays());
    final TimeSeries accumulatedSeriesExpected = new TimeSeries(
            I18n.getString("plugins.liquidityplanning.forecast.expected"));
    final TimeSeries creditSeries = new TimeSeries(I18n.getString("plugins.liquidityplanning.common.credit"));
    final TimeSeries debitSeries = new TimeSeries(I18n.getString("plugins.liquidityplanning.common.debit"));
    double accumulatedExpected = settings.getStartAmount().doubleValue();

    final DayHolder dh = new DayHolder();
    final Date lower = dh.getDate();
    for (int i = 0; i < settings.getNextDays(); i++) {
        final Day day = new Day(dh.getDayOfMonth(), dh.getMonth() + 1, dh.getYear());
        if (i > 0) {
            accumulatedExpected += cashFlow.getDebitsExpected()[i - 1].doubleValue()
                    + cashFlow.getCreditsExpected()[i - 1].doubleValue();
        }
        accumulatedSeriesExpected.add(day, accumulatedExpected);
        creditSeries.add(day, cashFlow.getCreditsExpected()[i].doubleValue());
        debitSeries.add(day, cashFlow.getDebitsExpected()[i].doubleValue());
        dh.add(Calendar.DATE, 1);
    }
    dh.add(Calendar.DATE, -1);
    final XYChartBuilder cb = new XYChartBuilder(ChartFactory.createXYBarChart(null, null, false, null, null,
            PlotOrientation.VERTICAL, false, false, false));
    int counter = 0;

    final TimeSeriesCollection xyDataSeries = new TimeSeriesCollection();
    xyDataSeries.addSeries(accumulatedSeriesExpected);
    final XYLineAndShapeRenderer lineRenderer = new XYLineAndShapeRenderer(true, true);
    lineRenderer.setSeriesPaint(0, cb.getRedMarker());
    lineRenderer.setSeriesVisibleInLegend(0, true);
    cb.setRenderer(counter, lineRenderer).setDataset(counter++, xyDataSeries).setStrongStyle(lineRenderer,
            false, accumulatedSeriesExpected);

    final TimeSeriesCollection cashflowSet = new TimeSeriesCollection();
    cashflowSet.addSeries(debitSeries);
    cashflowSet.addSeries(creditSeries);
    final XYBarRenderer barRenderer = new XYBarRenderer(.2);
    barRenderer.setSeriesPaint(0, cb.getGreenFill());
    barRenderer.setSeriesPaint(1, cb.getRedFill());
    barRenderer.setShadowVisible(false);
    cb.setRenderer(counter, barRenderer).setDataset(counter++, cashflowSet);

    cb.setDateXAxis(true).setDateXAxisRange(lower, dh.getDate()).setYAxis(true, null);
    return cb.getChart();
}

From source file:org.hxzon.demo.jfreechart.DatasetVisibleDemo3.java

private static XYDataset createDataset2() {
    boolean notify = false;

    TimeSeries s1 = new TimeSeries(series1Name);
    s1.add(new Month(1, 2001), 181.8, notify);
    s1.add(new Month(2, 2001), 167.3, notify);
    s1.add(new Month(4, 2001), 153.8, notify);
    s1.add(new Month(5, 2001), 167.6, notify);
    s1.add(new Month(6, 2001), 158.8, notify);
    s1.add(new Month(9, 2001), 148.3, notify);
    s1.add(new Month(10, 2001), 153.9, notify);
    s1.add(new Month(11, 2001), 142.7, notify);
    s1.add(new Month(12, 2001), 123.2, notify);
    s1.add(new Month(1, 2002), 131.8, notify);
    s1.add(new Month(2, 2002), 139.6, notify);
    s1.add(new Month(3, 2002), 142.9, notify);
    s1.add(new Month(4, 2002), 138.7, notify);
    s1.add(new Month(6, 2002), 137.3, notify);
    s1.add(new Month(7, 2002), 143.9, notify);
    s1.add(new Month(8, 2002), 139.8, notify);
    s1.add(new Month(9, 2002), 137.0, notify);
    s1.add(new Month(10, 2002), 132.8, notify);

    TimeSeries s2 = new TimeSeries(series2Name);
    s2.add(new Month(2, 2001), 129.6, notify);
    s2.add(new Month(3, 2001), 123.2, notify);
    s2.add(new Month(4, 2001), 117.2, notify);
    s2.add(new Month(5, 2001), 124.1, notify);
    s2.add(new Month(6, 2001), 122.6, notify);
    s2.add(new Month(7, 2001), 119.2, notify);
    s2.add(new Month(8, 2001), 116.5, notify);
    s2.add(new Month(9, 2001), 112.7, notify);
    s2.add(new Month(10, 2001), 101.5, notify);
    s2.add(new Month(11, 2001), 106.1, notify);
    s2.add(new Month(12, 2001), 110.3, notify);
    s2.add(new Month(1, 2002), 111.7, notify);
    s2.add(new Month(2, 2002), 111.0, notify);
    s2.add(new Month(3, 2002), 109.6, notify);
    s2.add(new Month(4, 2002), 113.2, notify);
    s2.add(new Month(5, 2002), 111.6, notify);
    s2.add(new Month(6, 2002), 108.8, notify);
    s2.add(new Month(7, 2002), 101.6, notify);

    TimeSeries s3 = new TimeSeries(series3Name);
    s3.add(new Month(2, 2001), 2129.6, notify);
    s3.add(new Month(3, 2001), 2123.2, notify);
    s3.add(new Month(4, 2001), 2117.2, notify);
    s3.add(new Month(5, 2001), 2124.1, notify);
    s3.add(new Month(6, 2001), 2122.6, notify);
    s3.add(new Month(7, 2001), 2119.2, notify);
    s3.add(new Month(8, 2001), 2116.5, notify);
    s3.add(new Month(9, 2001), 2112.7, notify);
    s3.add(new Month(10, 2001), 2101.5, notify);
    s3.add(new Month(11, 2001), 2106.1, notify);
    s3.add(new Month(12, 2001), 2110.3, notify);
    s3.add(new Month(1, 2002), 2111.7, notify);
    s3.add(new Month(2, 2002), 2111.0, notify);
    s3.add(new Month(3, 2002), 2109.6, notify);
    s3.add(new Month(4, 2002), 2113.2, notify);
    s3.add(new Month(5, 2002), 2111.6, notify);
    s3.add(new Month(6, 2002), 2108.8, notify);
    s3.add(new Month(7, 2002), 2101.6, notify);

    TimeSeriesCollection dataset = new TimeSeriesCollection();
    dataset.addSeries(s3);//from   w ww.  ja  v  a  2 s  .c o m
    dataset.addSeries(s2);
    dataset.addSeries(s1);

    return dataset;
}

From source file:org.spf4j.perf.impl.chart.Charts.java

private static TimeSeriesCollection createTimeSeriesCollection(final String[] measurementNames,
        final long[] timestamps, final double[][] measurements) {
    TimeSeriesCollection timeseriescollection = new TimeSeriesCollection();
    for (int i = 0; i < measurementNames.length; i++) {
        TimeSeries tseries = new TimeSeries(measurementNames[i]);
        for (int j = 0; j < timestamps.length; j++) {
            FixedMillisecond ts = new FixedMillisecond(timestamps[j]);
            tseries.add(ts, measurements[i][j]);
        }// w  w w  .ja v  a 2s. c  om
        timeseriescollection.addSeries(tseries);
    }
    return timeseriescollection;
}

From source file:org.zaproxy.zap.extension.ascan.ScanProgressDialog.java

/**
 * /*from   w  ww .  j  a va  2s.  c  o  m*/
 */
private void initialize() {
    this.setSize(new Dimension(580, 504));

    if (site != null) {
        this.setTitle(MessageFormat.format(Constant.messages.getString("ascan.progress.title"), site));
    }

    JTabbedPane tabbedPane = new JTabbedPane();
    JPanel tab1 = new JPanel();
    tab1.setLayout(new GridBagLayout());

    JPanel hostPanel = new JPanel();
    hostPanel.setLayout(new GridBagLayout());
    hostPanel.add(new JLabel(Constant.messages.getString("ascan.progress.label.host")),
            LayoutHelper.getGBC(0, 0, 1, 0.4D));
    hostPanel.add(getHostSelect(), LayoutHelper.getGBC(1, 0, 1, 0.6D));
    tab1.add(hostPanel, LayoutHelper.getGBC(0, 0, 3, 1.0D, 0.0D));

    tab1.add(getJScrollPane(), LayoutHelper.getGBC(0, 1, 3, 1.0D, 1.0D));

    tab1.add(new JLabel(), LayoutHelper.getGBC(0, 1, 1, 1.0D, 0.0D)); // spacer
    tab1.add(getCloseButton(), LayoutHelper.getGBC(1, 2, 1, 0.0D, 0.0D));
    tab1.add(new JLabel(), LayoutHelper.getGBC(2, 1, 1, 1.0D, 0.0D)); // spacer

    tabbedPane.insertTab(Constant.messages.getString("ascan.progress.tab.progress"), null, tab1, null, 0);
    this.add(tabbedPane);

    int mins = extension.getScannerParam().getMaxChartTimeInMins();
    if (mins > 0) {
        // Treat zero mins as disabled
        JPanel tab2 = new JPanel();
        tab2.setLayout(new GridBagLayout());

        this.seriesTotal = new TimeSeries("TotalResponses"); // Name not shown, so no need to i18n
        final TimeSeriesCollection dataset = new TimeSeriesCollection(this.seriesTotal);

        this.series100 = new TimeSeries(Constant.messages.getString("ascan.progress.chart.1xx"));
        this.series200 = new TimeSeries(Constant.messages.getString("ascan.progress.chart.2xx"));
        this.series300 = new TimeSeries(Constant.messages.getString("ascan.progress.chart.3xx"));
        this.series400 = new TimeSeries(Constant.messages.getString("ascan.progress.chart.4xx"));
        this.series500 = new TimeSeries(Constant.messages.getString("ascan.progress.chart.5xx"));

        this.seriesTotal.setMaximumItemAge(mins * 60);
        this.series100.setMaximumItemAge(mins * 60);
        this.series200.setMaximumItemAge(mins * 60);
        this.series300.setMaximumItemAge(mins * 60);
        this.series400.setMaximumItemAge(mins * 60);
        this.series500.setMaximumItemAge(mins * 60);

        dataset.addSeries(series100);
        dataset.addSeries(series200);
        dataset.addSeries(series300);
        dataset.addSeries(series400);
        dataset.addSeries(series500);

        chart = createChart(dataset);
        // Set up some vaguesly sensible colours
        chart.getXYPlot().getRenderer(0).setSeriesPaint(0, Color.BLACK); // Totals
        chart.getXYPlot().getRenderer(0).setSeriesPaint(1, Color.GRAY); // 100: Info
        chart.getXYPlot().getRenderer(0).setSeriesPaint(2, Color.GREEN); // 200: OK
        chart.getXYPlot().getRenderer(0).setSeriesPaint(3, Color.BLUE); // 300: Info
        chart.getXYPlot().getRenderer(0).setSeriesPaint(4, Color.MAGENTA); // 400: Bad req
        chart.getXYPlot().getRenderer(0).setSeriesPaint(5, Color.RED); // 500: Internal error

        final ChartPanel chartPanel = new ChartPanel(chart);
        tab2.add(chartPanel, LayoutHelper.getGBC(0, 0, 1, 1.0D, 1.0D));

        tabbedPane.insertTab(Constant.messages.getString("ascan.progress.tab.chart"), null, tab2, null, 1);
    }

    // Stop the updating thread when the window is closed
    this.addWindowListener(new WindowAdapter() {
        @Override
        public void windowClosed(WindowEvent e) {
            stopThread = true;
        }
    });
}

From source file:com.bdb.weather.display.stripchart.StripChart.java

/**
 * Add a series to either the right or left dataset.
 * /* w  w  w. j av a 2 s . c  o  m*/
 * @param seriesName The name of the series
 * @param mapToLeftAxis Whether this is for the left or right axis
 * @param color The color to display the line
 */
public void addSeries(String seriesName, boolean mapToLeftAxis, Color color) {
    TimeSeries timeSeries = new TimeSeries(seriesName);
    series.put(seriesName, timeSeries);
    timeSeries.setMaximumItemAge(maxSpanHours * 3600);
}

From source file:com.bdb.weather.display.summary.WindSummary.java

/**
 * Load the data into the plot./*ww w.  j  av a  2  s .  c  om*/
 * 
 * @param records The summary records
 */
public void loadData(List<SummaryRecord> records) {
    dataTable.setItems(FXCollections.observableList(records));
    TimeSeriesCollection sustainedDataset = new TimeSeriesCollection();
    TimeSeries avgSpeedSeries = new TimeSeries("Average Sustained");
    TimeSeries maxSpeedSeries = new TimeSeries("Maximum Sustained");
    TimeSeriesCollection gustDataset = new TimeSeriesCollection();
    TimeSeries windGustSeries = new TimeSeries("Maximum Gust");

    for (int i = 0; i < records.size(); i++) {
        RegularTimePeriod p = RegularTimePeriod.createInstance(interval.getFreeChartClass(),
                TimeUtils.localDateTimeToDate(records.get(i).getDate().atStartOfDay()), TimeZone.getDefault());
        maxSpeedSeries.add(p, records.get(i).getMaxWindSpeed().get());
        avgSpeedSeries.add(p, records.get(i).getAvgWindSpeed().get());
        Speed gust = records.get(i).getMaxWindGust();

        if (gust != null) {
            windGustSeries.add(p, gust.get());
        }
    }

    sustainedDataset.addSeries(avgSpeedSeries);
    sustainedDataset.addSeries(maxSpeedSeries);
    gustDataset.addSeries(windGustSeries);

    plot.setDataset(SUSTAINED_WIND_SERIES, sustainedDataset);
    plot.setDataset(GUST_SERIES, gustDataset);
}

From source file:org.jfree.fx.demo.FXGraphics2DDemo1.java

/**
 * Creates a dataset, consisting of two series of monthly data.
 *
 * @return the dataset./*from ww w.ja  v a  2  s.com*/
 */
private static XYDataset createDataset() {

    TimeSeries s1 = new TimeSeries("Indicator Price");
    s1.add(new Month(1, 2010), 126.80);
    s1.add(new Month(2, 2010), 123.37);
    s1.add(new Month(3, 2010), 125.30);
    s1.add(new Month(4, 2010), 126.89);
    s1.add(new Month(5, 2010), 128.10);
    s1.add(new Month(6, 2010), 142.20);
    s1.add(new Month(7, 2010), 153.41);
    s1.add(new Month(8, 2010), 157.46);
    s1.add(new Month(9, 2010), 163.61);
    s1.add(new Month(10, 2010), 161.56);
    s1.add(new Month(11, 2010), 173.90);
    s1.add(new Month(12, 2010), 184.26);
    s1.add(new Month(1, 2011), 197.35);
    s1.add(new Month(2, 2011), 216.03);
    s1.add(new Month(3, 2011), 224.33);
    s1.add(new Month(4, 2011), 231.24);
    s1.add(new Month(5, 2011), 227.97);
    s1.add(new Month(6, 2011), 215.58);
    s1.add(new Month(7, 2011), 210.36);
    s1.add(new Month(8, 2011), 212.19);
    s1.add(new Month(9, 2011), 213.04);
    s1.add(new Month(10, 2011), 193.90);
    s1.add(new Month(11, 2011), 193.66);
    s1.add(new Month(12, 2011), 189.02);
    s1.add(new Month(1, 2012), 188.90);
    s1.add(new Month(2, 2012), 182.29);
    s1.add(new Month(3, 2012), 167.77);
    s1.add(new Month(4, 2012), 160.46);
    s1.add(new Month(5, 2012), 157.68);
    s1.add(new Month(6, 2012), 145.31);
    s1.add(new Month(7, 2012), 159.07);
    s1.add(new Month(8, 2012), 148.50);
    s1.add(new Month(9, 2012), 151.28);
    s1.add(new Month(10, 2012), 147.12);
    s1.add(new Month(11, 2012), 136.35);
    s1.add(new Month(12, 2012), 131.31);
    s1.add(new Month(1, 2013), 135.38);
    s1.add(new Month(2, 2013), 131.51);
    s1.add(new Month(3, 2013), 131.38);

    TimeSeries s2 = new TimeSeries("Columbian Milds");
    s2.add(new Month(1, 2010), 207.51);
    s2.add(new Month(2, 2010), 204.71);
    s2.add(new Month(3, 2010), 205.71);
    s2.add(new Month(4, 2010), 200.00);
    s2.add(new Month(5, 2010), 200.54);
    s2.add(new Month(6, 2010), 224.49);
    s2.add(new Month(7, 2010), 235.52);
    s2.add(new Month(8, 2010), 243.98);
    s2.add(new Month(9, 2010), 247.77);
    s2.add(new Month(10, 2010), 230.02);
    s2.add(new Month(11, 2010), 244.02);
    s2.add(new Month(12, 2010), 261.97);
    s2.add(new Month(1, 2011), 279.88);
    s2.add(new Month(2, 2011), 296.44);
    s2.add(new Month(3, 2011), 300.68);
    s2.add(new Month(4, 2011), 312.95);
    s2.add(new Month(5, 2011), 302.17);
    s2.add(new Month(6, 2011), 287.95);
    s2.add(new Month(7, 2011), 285.21);
    s2.add(new Month(8, 2011), 286.97);
    s2.add(new Month(9, 2011), 287.54);
    s2.add(new Month(10, 2011), 257.66);
    s2.add(new Month(11, 2011), 256.99);
    s2.add(new Month(12, 2011), 251.60);
    s2.add(new Month(1, 2012), 255.91);
    s2.add(new Month(2, 2012), 244.14);
    s2.add(new Month(3, 2012), 222.84);
    s2.add(new Month(4, 2012), 214.46);
    s2.add(new Month(5, 2012), 207.32);
    s2.add(new Month(6, 2012), 184.67);
    s2.add(new Month(7, 2012), 202.56);
    s2.add(new Month(8, 2012), 187.14);
    s2.add(new Month(9, 2012), 190.10);
    s2.add(new Month(10, 2012), 181.39);
    s2.add(new Month(11, 2012), 170.08);
    s2.add(new Month(12, 2012), 164.40);
    s2.add(new Month(1, 2013), 169.19);
    s2.add(new Month(2, 2013), 161.70);
    s2.add(new Month(3, 2013), 161.53);

    TimeSeries s3 = new TimeSeries("Other Milds");
    s3.add(new Month(1, 2010), 158.90);
    s3.add(new Month(2, 2010), 157.86);
    s3.add(new Month(3, 2010), 164.50);
    s3.add(new Month(4, 2010), 169.55);
    s3.add(new Month(5, 2010), 173.38);
    s3.add(new Month(6, 2010), 190.90);
    s3.add(new Month(7, 2010), 203.21);
    s3.add(new Month(8, 2010), 211.59);
    s3.add(new Month(9, 2010), 222.71);
    s3.add(new Month(10, 2010), 217.64);
    s3.add(new Month(11, 2010), 233.48);
    s3.add(new Month(12, 2010), 248.17);
    s3.add(new Month(1, 2011), 263.77);
    s3.add(new Month(2, 2011), 287.89);
    s3.add(new Month(3, 2011), 292.07);
    s3.add(new Month(4, 2011), 300.12);
    s3.add(new Month(5, 2011), 291.09);
    s3.add(new Month(6, 2011), 274.98);
    s3.add(new Month(7, 2011), 268.02);
    s3.add(new Month(8, 2011), 270.44);
    s3.add(new Month(9, 2011), 274.88);
    s3.add(new Month(10, 2011), 247.82);
    s3.add(new Month(11, 2011), 245.09);
    s3.add(new Month(12, 2011), 236.71);
    s3.add(new Month(1, 2012), 237.21);
    s3.add(new Month(2, 2012), 224.16);
    s3.add(new Month(3, 2012), 201.26);
    s3.add(new Month(4, 2012), 191.45);
    s3.add(new Month(5, 2012), 184.65);
    s3.add(new Month(6, 2012), 168.69);
    s3.add(new Month(7, 2012), 190.45);
    s3.add(new Month(8, 2012), 174.82);
    s3.add(new Month(9, 2012), 178.98);
    s3.add(new Month(10, 2012), 173.32);
    s3.add(new Month(11, 2012), 159.91);
    s3.add(new Month(12, 2012), 152.74);
    s3.add(new Month(1, 2013), 157.29);
    s3.add(new Month(2, 2013), 149.46);
    s3.add(new Month(3, 2013), 149.78);

    TimeSeries s4 = new TimeSeries("Brazilian Naturals");
    s4.add(new Month(1, 2010), 131.67);
    s4.add(new Month(2, 2010), 124.57);
    s4.add(new Month(3, 2010), 126.21);
    s4.add(new Month(4, 2010), 126.07);
    s4.add(new Month(5, 2010), 127.45);
    s4.add(new Month(6, 2010), 143.20);
    s4.add(new Month(7, 2010), 156.87);
    s4.add(new Month(8, 2010), 163.21);
    s4.add(new Month(9, 2010), 175.15);
    s4.add(new Month(10, 2010), 175.38);
    s4.add(new Month(11, 2010), 190.62);
    s4.add(new Month(12, 2010), 204.25);
    s4.add(new Month(1, 2011), 219.77);
    s4.add(new Month(2, 2011), 247.00);
    s4.add(new Month(3, 2011), 260.98);
    s4.add(new Month(4, 2011), 273.40);
    s4.add(new Month(5, 2011), 268.66);
    s4.add(new Month(6, 2011), 250.59);
    s4.add(new Month(7, 2011), 245.69);
    s4.add(new Month(8, 2011), 249.83);
    s4.add(new Month(9, 2011), 255.64);
    s4.add(new Month(10, 2011), 234.28);
    s4.add(new Month(11, 2011), 236.75);
    s4.add(new Month(12, 2011), 228.79);
    s4.add(new Month(1, 2012), 228.21);
    s4.add(new Month(2, 2012), 215.40);
    s4.add(new Month(3, 2012), 192.03);
    s4.add(new Month(4, 2012), 180.90);
    s4.add(new Month(5, 2012), 174.17);
    s4.add(new Month(6, 2012), 156.17);
    s4.add(new Month(7, 2012), 175.98);
    s4.add(new Month(8, 2012), 160.05);
    s4.add(new Month(9, 2012), 166.53);
    s4.add(new Month(10, 2012), 161.20);
    s4.add(new Month(11, 2012), 148.25);
    s4.add(new Month(12, 2012), 140.69);
    s4.add(new Month(1, 2013), 145.17);
    s4.add(new Month(2, 2013), 136.63);
    s4.add(new Month(3, 2013), 133.61);

    TimeSeries s5 = new TimeSeries("Robustas");
    s5.add(new Month(1, 2010), 69.92);
    s5.add(new Month(2, 2010), 67.88);
    s5.add(new Month(3, 2010), 67.25);
    s5.add(new Month(4, 2010), 71.59);
    s5.add(new Month(5, 2010), 70.70);
    s5.add(new Month(6, 2010), 76.92);
    s5.add(new Month(7, 2010), 85.27);
    s5.add(new Month(8, 2010), 82.68);
    s5.add(new Month(9, 2010), 81.28);
    s5.add(new Month(10, 2010), 85.27);
    s5.add(new Month(11, 2010), 92.04);
    s5.add(new Month(12, 2010), 94.09);
    s5.add(new Month(1, 2011), 101.09);
    s5.add(new Month(2, 2011), 109.35);
    s5.add(new Month(3, 2011), 118.13);
    s5.add(new Month(4, 2011), 117.37);
    s5.add(new Month(5, 2011), 121.98);
    s5.add(new Month(6, 2011), 117.95);
    s5.add(new Month(7, 2011), 112.73);
    s5.add(new Month(8, 2011), 112.07);
    s5.add(new Month(9, 2011), 106.06);
    s5.add(new Month(10, 2011), 98.10);
    s5.add(new Month(11, 2011), 97.24);
    s5.add(new Month(12, 2011), 98.41);
    s5.add(new Month(1, 2012), 96.72);
    s5.add(new Month(2, 2012), 101.93);
    s5.add(new Month(3, 2012), 103.57);
    s5.add(new Month(4, 2012), 101.80);
    s5.add(new Month(5, 2012), 106.88);
    s5.add(new Month(6, 2012), 105.70);
    s5.add(new Month(7, 2012), 107.06);
    s5.add(new Month(8, 2012), 106.52);
    s5.add(new Month(9, 2012), 104.95);
    s5.add(new Month(10, 2012), 104.47);
    s5.add(new Month(11, 2012), 97.67);
    s5.add(new Month(12, 2012), 96.59);
    s5.add(new Month(1, 2013), 99.69);
    s5.add(new Month(2, 2013), 104.03);
    s5.add(new Month(3, 2013), 106.26);

    TimeSeries s6 = new TimeSeries("Futures (London)");
    s6.add(new Month(1, 2010), 62.66);
    s6.add(new Month(2, 2010), 60.37);
    s6.add(new Month(3, 2010), 58.64);
    s6.add(new Month(4, 2010), 62.21);
    s6.add(new Month(5, 2010), 62.46);
    s6.add(new Month(6, 2010), 69.72);
    s6.add(new Month(7, 2010), 78.17);
    s6.add(new Month(8, 2010), 78.42);
    s6.add(new Month(9, 2010), 75.87);
    s6.add(new Month(10, 2010), 80.08);
    s6.add(new Month(11, 2010), 86.40);
    s6.add(new Month(12, 2010), 88.70);
    s6.add(new Month(1, 2011), 96.02);
    s6.add(new Month(2, 2011), 104.53);
    s6.add(new Month(3, 2011), 111.36);
    s6.add(new Month(4, 2011), 111.34);
    s6.add(new Month(5, 2011), 116.76);
    s6.add(new Month(6, 2011), 110.51);
    s6.add(new Month(7, 2011), 103.36);
    s6.add(new Month(8, 2011), 102.71);
    s6.add(new Month(9, 2011), 96.10);
    s6.add(new Month(10, 2011), 88.64);
    s6.add(new Month(11, 2011), 85.78);
    s6.add(new Month(12, 2011), 87.65);
    s6.add(new Month(1, 2012), 84.19);
    s6.add(new Month(2, 2012), 88.69);
    s6.add(new Month(3, 2012), 91.37);
    s6.add(new Month(4, 2012), 91.81);
    s6.add(new Month(5, 2012), 96.82);
    s6.add(new Month(6, 2012), 94.75);
    s6.add(new Month(7, 2012), 96.14);
    s6.add(new Month(8, 2012), 96.12);
    s6.add(new Month(9, 2012), 94.65);
    s6.add(new Month(10, 2012), 94.66);
    s6.add(new Month(11, 2012), 87.32);
    s6.add(new Month(12, 2012), 85.94);
    s6.add(new Month(1, 2013), 88.85);
    s6.add(new Month(2, 2013), 94.41);
    s6.add(new Month(3, 2013), 97.22);

    TimeSeries s7 = new TimeSeries("Futures (New York)");
    s7.add(new Month(1, 2010), 142.76);
    s7.add(new Month(2, 2010), 134.35);
    s7.add(new Month(3, 2010), 134.97);
    s7.add(new Month(4, 2010), 135.12);
    s7.add(new Month(5, 2010), 135.81);
    s7.add(new Month(6, 2010), 152.36);
    s7.add(new Month(7, 2010), 165.23);
    s7.add(new Month(8, 2010), 175.10);
    s7.add(new Month(9, 2010), 187.80);
    s7.add(new Month(10, 2010), 190.43);
    s7.add(new Month(11, 2010), 206.92);
    s7.add(new Month(12, 2010), 221.51);
    s7.add(new Month(1, 2011), 238.05);
    s7.add(new Month(2, 2011), 261.41);
    s7.add(new Month(3, 2011), 274.10);
    s7.add(new Month(4, 2011), 285.58);
    s7.add(new Month(5, 2011), 277.72);
    s7.add(new Month(6, 2011), 262.52);
    s7.add(new Month(7, 2011), 255.90);
    s7.add(new Month(8, 2011), 260.39);
    s7.add(new Month(9, 2011), 261.39);
    s7.add(new Month(10, 2011), 236.74);
    s7.add(new Month(11, 2011), 235.25);
    s7.add(new Month(12, 2011), 227.23);
    s7.add(new Month(1, 2012), 227.50);
    s7.add(new Month(2, 2012), 212.09);
    s7.add(new Month(3, 2012), 188.78);
    s7.add(new Month(4, 2012), 181.75);
    s7.add(new Month(5, 2012), 176.50);
    s7.add(new Month(6, 2012), 159.93);
    s7.add(new Month(7, 2012), 183.20);
    s7.add(new Month(8, 2012), 169.77);
    s7.add(new Month(9, 2012), 175.36);
    s7.add(new Month(10, 2012), 170.43);
    s7.add(new Month(11, 2012), 155.72);
    s7.add(new Month(12, 2012), 149.58);
    s7.add(new Month(1, 2013), 154.28);
    s7.add(new Month(2, 2013), 144.89);
    s7.add(new Month(3, 2013), 141.43);

    TimeSeriesCollection dataset = new TimeSeriesCollection();
    dataset.addSeries(s1);
    dataset.addSeries(s2);
    dataset.addSeries(s3);
    dataset.addSeries(s4);
    dataset.addSeries(s5);
    dataset.addSeries(s6);
    dataset.addSeries(s7);
    return dataset;
}

From source file:lu.lippmann.cdb.common.gui.ts.TimeSeriesChartUtil.java

private static void fillWithMultipleAxis(final Instances dataSet, final int dateIdx,
        final TimeSeriesCollection tsDataset, final JFreeChart tsChart) {
    final int numInstances = dataSet.numInstances();

    int axisNumber = 0;
    final Calendar cal = Calendar.getInstance();
    for (final Integer i : WekaDataStatsUtil.getNumericAttributesIndexes(dataSet)) {
        final TimeSeries ts = new TimeSeries(dataSet.attribute(i).name());
        for (int k = 0; k < numInstances; k++) {
            final long timeInMilliSec = (long) dataSet.instance(k).value(dateIdx);
            cal.setTimeInMillis(timeInMilliSec);
            if (dataSet.instance(k).isMissing(i)) {
                ts.addOrUpdate(new Millisecond(cal.getTime()), null);
            } else {
                ts.addOrUpdate(new Millisecond(cal.getTime()), dataSet.instance(k).value(i));
            }/*  www  . j a  v a2  s .com*/
        }
        if (!ts.isEmpty()) {
            if (axisNumber == 0) {
                tsDataset.addSeries(ts);
            } else {
                final XYPlot plot = tsChart.getXYPlot();
                final NumberAxis axisToAdd = new NumberAxis(dataSet.attribute(i).name());
                axisToAdd.setAutoRangeIncludesZero(false);
                plot.setRangeAxis(axisNumber, axisToAdd);
                final TimeSeriesCollection t = new TimeSeriesCollection();
                t.addSeries(ts);
                plot.setDataset(axisNumber, t);
                plot.mapDatasetToRangeAxis(axisNumber, axisNumber);
                final StandardXYItemRenderer renderer2 = new StandardXYItemRenderer();
                renderer2.setSeriesPaint(0, ColorHelper.getColorForAString(dataSet.attribute(i).name()));
                plot.setRenderer(axisNumber, renderer2);
            }
            axisNumber++;
        }
    }
}

From source file:org.sunzoft.sunstock.StockMain.java

protected XYDataset initIndexData() {
    TimeSeries ts1 = new TimeSeries("");
    float c = profits.get(0).capital;
    for (AccountStatus td : profits) {
        ts1.add(new Day(Integer.parseInt(td.date.substring(6)), Integer.parseInt(td.date.substring(4, 6)),
                Integer.parseInt(td.date.substring(0, 4))), 1 + (td.market - td.capital) / c);
    }/*from w  w  w  .java 2s  .  c o m*/
    TimeSeriesCollection localTimeSeriesCollection = new TimeSeriesCollection();
    localTimeSeriesCollection.addSeries(ts1);
    return localTimeSeriesCollection;
}