Example usage for org.jfree.data.xy XYIntervalSeriesCollection XYIntervalSeriesCollection

List of usage examples for org.jfree.data.xy XYIntervalSeriesCollection XYIntervalSeriesCollection

Introduction

In this page you can find the example usage for org.jfree.data.xy XYIntervalSeriesCollection XYIntervalSeriesCollection.

Prototype

public XYIntervalSeriesCollection() 

Source Link

Document

Creates a new instance of XIntervalSeriesCollection.

Usage

From source file:com.att.aro.diagnostics.GraphPanel.java

private static void populateRrcPlot(XYPlot plot, TraceData.Analysis analysis) {

    final XYIntervalSeriesCollection rrcDataCollection = new XYIntervalSeriesCollection();
    if (analysis != null) {

        Map<RRCState, XYIntervalSeries> seriesMap = new EnumMap<RRCState, XYIntervalSeries>(RRCState.class);
        for (RRCState eventType : RRCState.values()) {
            XYIntervalSeries series = new XYIntervalSeries(eventType);
            seriesMap.put(eventType, series);
            rrcDataCollection.addSeries(series);
        }/*from w w w. jav  a 2 s  .  co m*/
        List<RrcStateRange> rrcStates = analysis.getRrcStateMachine().getRRcStateRanges();
        Iterator<RrcStateRange> iter = rrcStates.iterator();
        while (iter.hasNext()) {
            RrcStateRange currEvent = iter.next();
            RRCState state = currEvent.getState();
            if (state == RRCState.STATE_FACH || state == RRCState.TAIL_FACH) {
                seriesMap.get(state).add(currEvent.getBeginTime(), currEvent.getBeginTime(),
                        currEvent.getEndTime(), 0.25, 0, 0.5);
            } else {
                seriesMap.get(state).add(currEvent.getBeginTime(), currEvent.getBeginTime(),
                        currEvent.getEndTime(), 0.5, 0, 1);
            }

        }
        XYItemRenderer renderer = plot.getRenderer();
        Color dchGreen = new Color(34, 177, 76);
        Color fachOrange = new Color(255, 201, 14);

        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.STATE_IDLE), Color.white);
        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.LTE_IDLE), Color.white);

        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.PROMO_IDLE_DCH), Color.red);
        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.LTE_PROMOTION), Color.red);

        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.STATE_DCH), fachOrange);
        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.LTE_CONTINUOUS), fachOrange);

        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.TAIL_DCH), getTailPaint(fachOrange));
        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.LTE_CR_TAIL), getTailPaint(fachOrange));
        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.LTE_DRX_SHORT), getTailPaint(fachOrange));
        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.LTE_DRX_LONG), getTailPaint(fachOrange));

        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.STATE_FACH), dchGreen);
        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.TAIL_FACH), getTailPaint(dchGreen));

        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.PROMO_FACH_DCH), Color.red);

        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.WIFI_IDLE), Color.white);
        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.WIFI_ACTIVE), fachOrange);
        renderer.setSeriesPaint(rrcDataCollection.indexOf(RRCState.WIFI_TAIL), getTailPaint(fachOrange));

        // Assign ToolTip to renderer
        final Profile profile = analysis.getProfile();
        renderer.setBaseToolTipGenerator(new XYToolTipGenerator() {
            @Override
            public String generateToolTip(XYDataset dataset, int series, int item) {
                RRCState eventType = (RRCState) rrcDataCollection.getSeries(series).getKey();
                final String PREFIX = "RRCTooltip.";
                if (eventType == RRCState.LTE_IDLE) {
                    return MessageFormat.format(rb.getString(PREFIX + eventType),
                            ((ProfileLTE) profile).getIdlePingPeriod());
                }
                return rb.getString(PREFIX + eventType);
            }
        });

    }

    plot.setDataset(rrcDataCollection);
}

From source file:com.att.aro.diagnostics.GraphPanel.java

private static void populateNetworkTyesPlot(XYPlot plot, TraceData.Analysis analysis) {
    if (analysis != null) {

        final XYIntervalSeriesCollection networkDataSeries = new XYIntervalSeriesCollection();
        final Map<NetworkType, XYIntervalSeries> seriesMap = new EnumMap<NetworkType, XYIntervalSeries>(
                NetworkType.class);
        createDataSeriesForAllNetworkTypes(seriesMap, networkDataSeries);

        Iterator<NetworkBearerTypeInfo> iter = analysis.getNetworTypeInfos().iterator();
        if (iter.hasNext()) {
            while (iter.hasNext()) {
                NetworkBearerTypeInfo networkInfo = iter.next();
                if (networkInfo.getNetworkType() != NetworkType.none) {
                    seriesMap.get(networkInfo.getNetworkType()).add(networkInfo.getBeginTimestamp(),
                            networkInfo.getBeginTimestamp(), networkInfo.getEndTimestamp(), 0.5, 0, 1);
                }// w  ww.ja  v a2  s.  c  o  m
            }
        } else {
            NetworkType nt = analysis.getTraceData().getNetworkType();
            if (nt != null && nt != NetworkType.none) {
                seriesMap.get(nt).add(0, 0, analysis.getTraceData().getTraceDuration(), 0.5, 0, 1);
            }
        }

        XYItemRenderer renderer = plot.getRenderer();
        setRenderingColorForDataSeries(renderer, networkDataSeries);

        // Assign ToolTip to renderer
        renderer.setBaseToolTipGenerator(new XYToolTipGenerator() {
            @Override
            public String generateToolTip(XYDataset dataset, int series, int item) {
                NetworkType networkType = (NetworkType) networkDataSeries.getSeries(series).getKey();
                return MessageFormat.format(rb.getString("network.tooltip"), dataset.getX(series, item),
                        ResourceBundleManager.getEnumString(networkType));
            }
        });

        plot.setDataset(networkDataSeries);

    } else {
        plot.setDataset(new XYIntervalSeriesCollection());
    }
}