Example usage for org.jfree.chart.renderer.xy StackedXYBarRenderer setBarPainter

List of usage examples for org.jfree.chart.renderer.xy StackedXYBarRenderer setBarPainter

Introduction

In this page you can find the example usage for org.jfree.chart.renderer.xy StackedXYBarRenderer setBarPainter.

Prototype

public void setBarPainter(XYBarPainter painter) 

Source Link

Document

Sets the bar painter and sends a RendererChangeEvent to all registered listeners.

Usage

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

private static XYPlot createSchedulePlot(RunResult result, double granularityInSeconds) {
    TimeTableXYDataset dataset = new TimeTableXYDataset();

    if (granularityInSeconds < 0.001) {
        granularityInSeconds = 0;/*  w  w w  .  j a  va  2  s.c  om*/
    }

    long delta = result.getResponses().get(0).getRequestSubmitTime();
    long firstRequest = 0;
    double windowStart = firstRequest;
    long summedDiffs = 0;
    long numberOfElements = 0;
    Iterator<JMeterResponse> responseIterator = result.getResponses().iterator();
    Iterator<Long> diffIterator = result.getTimestampDiffs().iterator();
    while (responseIterator.hasNext() && diffIterator.hasNext()) {
        AbstractResponse response = responseIterator.next();
        Long diff = diffIterator.next();
        long requestSubmitTime = response.getRequestSubmitTime() - delta;
        if (requestSubmitTime - windowStart > granularityInSeconds * 1000) {
            if (numberOfElements > 0) {
                addDiffToDataset(granularityInSeconds, dataset, windowStart, summedDiffs, numberOfElements);
                numberOfElements = 0;
                summedDiffs = 0;
                firstRequest = requestSubmitTime;
            }
            if (granularityInSeconds > 0) {
                while (requestSubmitTime - windowStart > granularityInSeconds * 1000) {
                    windowStart += granularityInSeconds * 1000;
                }
            } else {
                windowStart = requestSubmitTime;
            }
        }
        numberOfElements++;
        summedDiffs += diff;
    }
    if (numberOfElements > 0) {
        addDiffToDataset(granularityInSeconds, dataset, windowStart, summedDiffs, numberOfElements);
    }
    NumberAxis rangeAxis = new NumberAxis("Request Delay [ms]");
    StackedXYBarRenderer renderer = new StackedXYBarRenderer(0.10);
    renderer.setShadowVisible(false);
    renderer.setBarPainter(new StandardXYBarPainter());
    XYPlot plot = new XYPlot(dataset, null, rangeAxis, renderer);
    return plot;
}

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

public static XYPlot createResponseTimePlot(RunResult result, String name, double granularityInSeconds) {
    TimeTableXYDataset dataset = new TimeTableXYDataset();

    if (granularityInSeconds < 0.001) {
        granularityInSeconds = 0;/*  w  w  w . j a v a  2  s  .  co  m*/
    }

    long delta = result.getResponses().get(0).getRequestSubmitTime();
    long firstRequest = 0;
    double windowStart = firstRequest;
    long summedResponseTimes = 0;
    long summedWorkTimes = 0;
    long numberOfElements = 0;

    for (JMeterResponse response : result.getResponses()) {
        long requestSubmitTime = response.getRequestSubmitTime() - delta;
        if (requestSubmitTime - windowStart > granularityInSeconds * 1000) {
            if (numberOfElements > 0) {
                addResponseTimeToDataset(dataset, granularityInSeconds, (long) windowStart, summedResponseTimes,
                        summedWorkTimes, numberOfElements, name);
                numberOfElements = 0;
                summedResponseTimes = 0;
                summedWorkTimes = 0;
                firstRequest = requestSubmitTime;
            }
            if (granularityInSeconds > 0) {
                while (requestSubmitTime - windowStart > granularityInSeconds * 1000) {
                    windowStart += granularityInSeconds * 1000;
                }
            } else {
                windowStart = requestSubmitTime;
            }
        }
        numberOfElements++;
        summedResponseTimes += response.getResponseTime();
        summedWorkTimes += response.getRequestServiceTime();
    }
    if (numberOfElements > 0) {
        addResponseTimeToDataset(dataset, granularityInSeconds, (long) windowStart, summedResponseTimes,
                summedWorkTimes, numberOfElements, name);
    }

    NumberAxis rangeAxis = new NumberAxis("Resp.Time [ms]");
    rangeAxis.setRange(0, 1100);
    StackedXYBarRenderer renderer = new StackedXYBarRenderer(0.10);
    renderer.setShadowVisible(false);
    renderer.setBarPainter(new StandardXYBarPainter());
    renderer.setSeriesPaint(0, Color.GRAY);
    renderer.setSeriesPaint(1, colorForConfig(name));
    XYPlot plot = new XYPlot(dataset, null, rangeAxis, renderer);
    return plot;
}

From source file:com.intel.stl.ui.common.view.ComponentFactory.java

public static JFreeChart createStackedXYBarChart(XYDataset dataset, String title, String domainAxisLabel,
        String rangeAxisLabel, boolean legend) {
    DateAxis dateaxis = new DateAxis(domainAxisLabel);
    NumberAxis numberaxis = new NumberAxis(rangeAxisLabel);
    StackedXYBarRenderer stackedxybarrenderer = new StackedXYBarRenderer(0.10000000000000001D);
    XYPlot xyplot = new XYPlot(dataset, dateaxis, numberaxis, stackedxybarrenderer);
    JFreeChart jfreechart = new JFreeChart(title, UIConstants.H5_FONT, xyplot, legend);
    ChartUtilities.applyCurrentTheme(jfreechart);

    stackedxybarrenderer.setShadowVisible(false);
    stackedxybarrenderer.setDrawBarOutline(false);
    stackedxybarrenderer.setBarPainter(new StandardXYBarPainter());
    stackedxybarrenderer.setBaseToolTipGenerator(new StandardXYToolTipGenerator(
            "<html><b>{0}</b><br> Time: {1}<br> Data: {2}</html>", Util.getHHMMSS(), new DecimalFormat("###")));

    xyplot.setBackgroundPaint(null);//w w  w .  j a va 2s .c  o m
    xyplot.setOutlinePaint(null);
    xyplot.setRangeGridlinePaint(UIConstants.INTEL_BORDER_GRAY);

    dateaxis.setLabelFont(UIConstants.H5_FONT);
    dateaxis.setLowerMargin(0.0D);
    dateaxis.setUpperMargin(0.0D);

    numberaxis.setRangeType(RangeType.POSITIVE);
    numberaxis.setLabelFont(UIConstants.H5_FONT);
    numberaxis.setLabelInsets(new RectangleInsets(0, 0, 0, 0));
    numberaxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());

    return jfreechart;
}