Example usage for org.jfree.data.time RegularTimePeriod createInstance

List of usage examples for org.jfree.data.time RegularTimePeriod createInstance

Introduction

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

Prototype

public static RegularTimePeriod createInstance(Class c, Date millisecond, TimeZone zone) 

Source Link

Document

Creates a time period that includes the specified millisecond, assuming the given time zone.

Usage

From source file:com.igalia.java.zk.components.JFreeChartEngine.java

/**
 * transfer a XYModel into JFreeChart TimeSeriesCollection.
 */// w  w w. j  a va2s. co m
private XYDataset XYModelToTimeDataset(XYModel model, Chart chart) {
    TimeZone tz = chart.getTimeZone();
    if (tz == null)
        tz = TimeZones.getCurrent();
    String p = chart.getPeriod();
    if (p == null)
        p = Chart.MILLISECOND;
    Class pclass = (Class) _periodMap.get(p);
    if (pclass == null) {
        throw new UiException("Unsupported period for Time Series chart: " + p);
    }
    final TimeSeriesCollection dataset = new TimeSeriesCollection(tz);

    for (final Iterator it = model.getSeries().iterator(); it.hasNext();) {
        final Comparable series = (Comparable) it.next();
        final org.jfree.data.time.TimeSeries tser = new org.jfree.data.time.TimeSeries(series);
        //new org.jfree.data.time.TimeSeries(series, pclass); //deprecated since JFreeChart 10.0.13
        final int size = model.getDataCount(series);
        for (int j = 0; j < size; ++j) {
            final RegularTimePeriod period = RegularTimePeriod.createInstance(pclass,
                    new Date(model.getX(series, j).longValue()), tz);
            tser.addOrUpdate(period, model.getY(series, j));
        }
        dataset.addSeries(tser);
    }
    return dataset;
}

From source file:com.jtstand.swing.StatsPanel.java

public JFreeChart getChartTime() {
    TreeMap<String, List<TestStepInstance>> s = getGroupedSteps(getFilteringIterator());
    if (s == null || s.size() == 0) {
        return null;
    }//w w  w.j  av  a2  s  .  com
    TimeSeriesCollection dataset = new TimeSeriesCollection();
    for (Iterator<String> en = s.keySet().iterator(); en.hasNext();) {
        String groupName = en.next();
        List<TestStepInstance> stps = s.get(groupName);
        //            TimeSeries pop = new TimeSeries(groupName, Millisecond.class);
        TimeSeries pop = new TimeSeries(groupName);
        for (Iterator<TestStepInstance> it = stps.iterator(); it.hasNext();) {
            TestStepInstance step = it.next();
            Number num = getNumber(step);
            if (num != null) {
                switch (chartMode) {
                case STEP_TIME:
                    pop.addOrUpdate(RegularTimePeriod.createInstance(Millisecond.class,
                            new Date(step.getStartTime()), TimeZone.getDefault()), num);
                    break;
                case SEQUENCE_TIME:
                    //                            pop.addOrUpdate(RegularTimePeriod.createInstance(Millisecond.class, new Date(step.getTestSequenceInstance().getStartTime()), RegularTimePeriod.DEFAULT_TIME_ZONE), num);
                    pop.addOrUpdate(RegularTimePeriod.createInstance(Millisecond.class,
                            new Date(step.getTestSequenceInstance().getCreateTime()), TimeZone.getDefault()),
                            num);
                    break;
                }
            }
        }
        dataset.addSeries(pop);
    }
    JFreeChart chart = null;
    switch (chartMode) {
    case STEP_TIME:
        chart = ChartFactory.createTimeSeriesChart(null, "Step Started Time", getValueString(), dataset,
                isGrouping(), true, false);
        break;
    case SEQUENCE_TIME:
        chart = ChartFactory.createTimeSeriesChart(null, "Sequence Started Time", getValueString(), dataset,
                isGrouping(), true, false);
        break;
    }
    chart.setBackgroundPaint((Paint) UIManager.get("Panel.background"));

    XYPlot plot = chart.getXYPlot();
    plot.setBackgroundPaint(Color.white);
    XYLineAndShapeRenderer renderer5 = new XYLineAndShapeRenderer();
    renderer5.setBaseSeriesVisibleInLegend(false);
    plot.setRenderer(renderer5);
    plot.setDomainGridlinesVisible(true);
    plot.setRangeGridlinesVisible(true);
    plot.setRangeCrosshairVisible(true);
    plot.setDomainCrosshairVisible(true);
    //        chart.setTitle(valueName);
    placeLimitMarkers(plot, true);

    //renderer.setBaseToolTipGenerator(new StandardXYToolTipGenerator());
    renderer5.setBaseToolTipGenerator(StandardXYToolTipGenerator.getTimeSeriesInstance());

    /* coloring */
    if (isCategorization()) {
        //            TreeMap<String, Color> cmap = new TreeMap<String, Color>();
        int i = 0;
        for (Iterator<String> it = catstats.keySet().iterator(); it.hasNext(); i++) {
            String groupName = it.next();
            Color c = ChartCategories.getColor(i);
            for (int j = 0; j < dataset.getSeriesCount(); j++) {
                TimeSeries ts = dataset.getSeries(j);
                if (ts.getKey().equals(groupName)) {
                    renderer5.setSeriesPaint(j, c);
                }
            }
        }
    } else {
        renderer5.setSeriesPaint(0, ChartCategories.getColor(0));
    }

    //        chart.addProgressListener(new ChartProgressListener() {
    //
    //            public void chartProgress(final ChartProgressEvent progress) {
    //                SwingUtilities.invokeLater(
    //                        new Runnable() {
    //
    //                            @Override
    //                            public void run() {
    //
    //                                System.out.println("progress:" + progress + " " + progress.getType());
    //                                if (progress.getType() == ChartProgressEvent.DRAWING_FINISHED) {
    //                                    if (plot != null) {
    //                                        if (plot.isDomainCrosshairVisible() && plot.isDomainCrosshairLockedOnData()) {
    ////                            System.out.println("getDomainCrosshairValue:" + plot.getDomainCrosshairValue());
    //                                            double xx = plot.getDomainCrosshairValue();
    //                                            if (xx != 0.0) {
    //                                                long x = (long) xx;
    //                                                System.out.println(new Date(x));
    //                                                for (TestStepInstance step : testStepInstances.getSteps()) {
    //                                                    if (step.getStartTime() != null && step.getStartTime().equals(x)) {
    //                                                        testStepInstances.selectStep(step);
    //                                                    }
    //                                                }
    //                                                System.out.println(new Date(x));
    //                                            }
    //                                        }
    ////                        if (plot.isRangeCrosshairVisible()) {
    ////                            System.out.println("getRangeCrosshairValue:" + plot.getRangeCrosshairValue());
    ////                        }
    //                                    }
    //                                }
    //                            }
    //                        });
    //            }
    //        });

    //        chart.addChangeListener(new ChartChangeListener() {
    //
    //            public void chartChanged(ChartChangeEvent event) {
    //                System.out.println("event:" + event);
    //                if (event != null) {
    ////                    JFreeChart chart = event.getChart();
    ////                    System.out.println("chart:" + chart);
    ////                    if (chart != null) {
    ////                        System.out.println("title:" + event.getChart().getTitle());
    ////                    }
    //                    System.out.println("type:" + event.getType());
    //                    if (plot != null) {
    //                        if (plot.isDomainCrosshairVisible()) {
    //                            System.out.println("getDomainCrosshairValue:" + plot.getDomainCrosshairValue());
    //                            long x = (long) plot.getDomainCrosshairValue();
    //                            for (TestStepInstance step : testStepInstances.getSteps()) {
    //                                if (step.getStartTime() != null && step.getStartTime().equals(x)) {
    //                                    testStepInstances.selectStep(step);
    //                                }
    //                            }
    //                            System.out.println(new Date(x));
    //                        }
    //                        if (plot.isRangeCrosshairVisible()) {
    //                            System.out.println("getRangeCrosshairValue:" + plot.getRangeCrosshairValue());
    //                        }
    //                    }
    //                }
    //            }
    //        });
    chart.setTextAntiAlias(false);
    return chart;
}

From source file:org.operamasks.faces.render.graph.ChartRenderer.java

private XYTextAnnotation createTimeSeriesTextAnnotation(UITextAnnotation at, Class timePeriodClass) {
    Date time = ChartUtils.convertDate(at.getxValue());
    if (time == null) {
        return null; // FIXME
    }//ww w. j a va  2s .c  o  m

    RegularTimePeriod timePeriod = RegularTimePeriod.createInstance(timePeriodClass, time,
            RegularTimePeriod.DEFAULT_TIME_ZONE);

    double x = timePeriod.getFirstMillisecond();
    double y = Coercion.coerceToDouble(at.getyValue());
    return createXYTextAnnotation(at, x, y);
}

From source file:org.lmn.fc.frameworks.starbase.plugins.observatory.ui.tabs.charts.ChartHelper.java

/***********************************************************************************************
 * Create a dummy TimeSeriesDataItem at the origin of the Domain.
 *
 * @param timeseriescollection/*from   w  w w. ja v  a 2 s.c  om*/
 * @param timeseries
 * @param domainstart
 * @param debug
 *
 * @return TimeSeriesDataItem
 */

public static TimeSeriesDataItem createDummyTimeSeriesDataItemAtOrigin(
        final TimeSeriesCollection timeseriescollection, final TimeSeries timeseries, final int domainstart,
        final boolean debug) {
    final String SOURCE = "ChartHelper.createDummyTimeSeriesDataItemAtOrigin() [domainstart=" + domainstart
            + "]";

    LOGGER.debug(debug, SOURCE);

    return new TimeSeriesDataItem(
            RegularTimePeriod.createInstance(timeseries.getTimePeriodClass(),
                    new Date(calculateDomainSliderMillis(ChartUIComponentPlugin.DOMAIN_SLIDER_MINIMUM,
                            ChartUIComponentPlugin.DOMAIN_SLIDER_MAXIMUM, domainstart,
                            timeseriescollection.getDomainLowerBound(true),
                            timeseriescollection.getDomainUpperBound(true), debug)),
                    TimeZone.getDefault()),
            timeseries.getMinY());
}