Example usage for org.jfree.data.category DefaultCategoryDataset DefaultCategoryDataset

List of usage examples for org.jfree.data.category DefaultCategoryDataset DefaultCategoryDataset

Introduction

In this page you can find the example usage for org.jfree.data.category DefaultCategoryDataset DefaultCategoryDataset.

Prototype

public DefaultCategoryDataset() 

Source Link

Document

Creates a new (empty) dataset.

Usage

From source file:ws.moor.bt.gui.charts.DownloadRatePerPeer.java

private DefaultCategoryDataset createDataset() {
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();

    long now = timeSource.getTime();

    Map<Double, String> rateToKey = new TreeMap<Double, String>();
    for (String key : counterRepository.getKeys("network.rawbytes.in")) {
        CounterStatistics statistics = counterRepository.getStatistics("network.rawbytes.in", key);
        double rate = statistics.getValueAt(now) - statistics.getValueAt(now - 60 * 1000);
        rate /= 60 * 1000;/*from   w w w . j  a  va  2  s .  co  m*/
        rateToKey.put(-rate, key);
    }

    for (Map.Entry<Double, String> entry : rateToKey.entrySet()) {
        dataset.addValue(-entry.getKey(), "dl rate", entry.getValue());
        if (dataset.getColumnCount() >= 20) {
            break;
        }
    }

    return dataset;
}

From source file:org.miloss.fgsms.services.rs.impl.reports.ws.TotalMessageSizesByService.java

/**
 * {@inheritDoc}/*from  w w  w.  j a va  2 s . com*/
 */
@Override
public void generateReport(OutputStreamWriter data, List<String> urls, String path, List<String> files,
        TimeRange range, String currentuser, SecurityWrapper classification, WebServiceContext ctx)
        throws IOException {

    Connection con = Utility.getPerformanceDBConnection();
    try {
        PreparedStatement cmd = null;
        ResultSet rs = null;
        DefaultCategoryDataset set = new DefaultCategoryDataset();
        JFreeChart chart = null;
        data.append("<hr /><h2>").append(GetDisplayName()).append("</h2>");
        data.append(
                "This represents the total transmitted message size, request + response, for each service over the given period of time.<br />");
        data.append(
                "<table class=\"table table-hover\"><tr><th>URL</th><th>Total Message Size (bytes)</th></tr>");
        for (int i = 0; i < urls.size(); i++) {
            if (!isPolicyTypeOf(urls.get(i), PolicyType.TRANSACTIONAL)) {
                continue;
            }
            //https://github.com/mil-oss/fgsms/issues/112
            if (!UserIdentityUtil.hasReadAccess(currentuser, "getReport", urls.get(i), classification, ctx)) {
                continue;
            }
            String url = Utility.encodeHTML(BaseReportGenerator.getPolicyDisplayName(urls.get(i)));
            long count = 0;
            try {
                cmd = con
                        .prepareStatement("select sum(requestsize + responsesize) from rawdata where uri=? and "
                                + "(UTCdatetime > ?) and (UTCdatetime < ?) and (requestsize>=0) and (responsesize>=0);");
                cmd.setString(1, urls.get(i));
                cmd.setLong(2, range.getStart().getTimeInMillis());
                cmd.setLong(3, range.getEnd().getTimeInMillis());
                rs = cmd.executeQuery();

                try {
                    if (rs.next()) {
                        count = rs.getLong(1);
                    }
                } catch (Exception ex) {
                    log.log(Level.DEBUG, null, ex);
                }
            } catch (Exception ex) {
                log.log(Level.WARN, null, ex);
            } finally {
                DBUtils.safeClose(rs);
                DBUtils.safeClose(cmd);
            }

            count = 0;
            try {
                cmd = con
                        .prepareStatement("select avg(requestsize + responsesize) from rawdata where uri=? and "
                                + "(UTCdatetime > ?) and (UTCdatetime < ?) ;");
                cmd.setString(1, urls.get(i));
                cmd.setLong(2, range.getStart().getTimeInMillis());
                cmd.setLong(3, range.getEnd().getTimeInMillis());
                rs = cmd.executeQuery();

                try {
                    if (rs.next()) {
                        count = rs.getLong(1);
                    }
                } catch (Exception ex) {
                    // log.log(Level.WARN, " error querying database for average message size url:" + urls.get(i), ex);
                }
            } catch (Exception ex) {
                log.log(Level.WARN, null, ex);
            } finally {
                DBUtils.safeClose(rs);
                DBUtils.safeClose(cmd);
            }
            data.append("<tr><td>").append(url).append("</td><td>");
            if (count > 0) {
                data.append(count + " bytes");
                set.addValue(count, url, url);
            } else
                data.append("N/A");
            data.append("</td></tr>");
        }
        chart = org.jfree.chart.ChartFactory.createBarChart(GetDisplayName(), "Service URL", "", set,
                PlotOrientation.HORIZONTAL, true, false, false);
        data.append("</table>");
        try {
            ChartUtilities.saveChartAsPNG(new File(
                    path + getFilePathDelimitor() + "image_" + this.getClass().getSimpleName() + ".png"), chart,
                    1500, pixelHeightCalc(set.getRowCount()));
        } catch (IOException ex) {
            log.log(Level.ERROR, "Error saving chart image for request", ex);
        }

        data.append("<img src=\"image_").append(this.getClass().getSimpleName()).append(".png\">");
        files.add(path + getFilePathDelimitor() + "image_" + this.getClass().getSimpleName() + ".png");
    } catch (Exception ex) {
        log.log(Level.ERROR, null, ex);
    } finally {
        DBUtils.safeClose(con);
    }
}

From source file:net.imglib2.script.analysis.BarChart.java

@SuppressWarnings("rawtypes")
static private final JFreeChart createChart(final Map<? extends Number, ? extends Number> data,
        final String title, final String xLabel, final String yLabel) {
    DefaultCategoryDataset dcd = new DefaultCategoryDataset();
    for (final Map.Entry<? extends Number, ? extends Number> e : data.entrySet()) {
        dcd.addValue(e.getValue(), "", (Comparable) e.getKey());
    }/*from w  w w  . j  a  v a 2 s.  com*/
    boolean legend = false;
    boolean tooltips = true;
    boolean urls = false;
    JFreeChart chart = ChartFactory.createBarChart(title, xLabel, yLabel, dcd, PlotOrientation.VERTICAL, legend,
            tooltips, urls);
    setBarTheme(chart);
    return chart;
}

From source file:org.matsim.pt.counts.PtBiasErrorGraph.java

@Override
public JFreeChart createChart(final int nbr) {
    DefaultCategoryDataset dataset0 = new DefaultCategoryDataset();
    DefaultCategoryDataset dataset1 = new DefaultCategoryDataset();

    this.errorStats = new ComparisonErrorStatsCalculator(this.ccl_);

    double[] meanRelError = errorStats.getMeanRelError();
    // double[] meanAbsError = errorStats.getMeanAbsError();
    double[] meanAbsBias = errorStats.getMeanAbsBias();

    for (int h = 0; h < 24; h++) {
        dataset0.addValue(meanRelError[h], "Mean rel error", Integer.toString(h + 1));
        // dataset1.addValue(meanAbsError[h], "Mean abs error",
        // Integer.toString(h + 1));
        dataset1.addValue(meanAbsBias[h], "Mean abs bias", Integer.toString(h + 1));
    }/* w  w  w  .  j av  a  2 s.  co m*/

    this.chart_ = ChartFactory.createLineChart(this.chartTitle, "Hour", "Mean rel error [%]", dataset0,
            PlotOrientation.VERTICAL, true, // legend?
            true, // tooltips?
            false // URLs?
    );
    CategoryPlot plot = this.chart_.getCategoryPlot();
    plot.setDomainAxisLocation(AxisLocation.BOTTOM_OR_RIGHT);
    plot.setDataset(1, dataset1);
    plot.mapDatasetToRangeAxis(1, 1);

    final LineAndShapeRenderer renderer = new LineAndShapeRenderer();
    renderer.setSeriesToolTipGenerator(0, new StandardCategoryToolTipGenerator());
    plot.setRenderer(0, renderer);

    final CategoryAxis axis1 = new CategoryAxis("Hour");
    axis1.setTickLabelFont(new Font("SansSerif", Font.PLAIN, 7));
    plot.setDomainAxis(axis1);

    // final ValueAxis axis2 = new
    // NumberAxis("Mean abs {bias, error} [veh/h]");
    final ValueAxis axis2 = new NumberAxis("Mean abs bias [veh/h]");
    plot.setRangeAxis(1, axis2);

    final ValueAxis axis3 = plot.getRangeAxis(0);
    axis3.setRange(0.0, 100.0);

    final LineAndShapeRenderer renderer2 = new LineAndShapeRenderer();
    renderer2.setSeriesToolTipGenerator(0, new StandardCategoryToolTipGenerator());
    renderer2.setSeriesToolTipGenerator(1, new StandardCategoryToolTipGenerator());
    // renderer2.setSeriesPaint(0, Color.black);
    plot.setRenderer(1, renderer2);
    plot.setDatasetRenderingOrder(DatasetRenderingOrder.REVERSE);

    return this.chart_;
}

From source file:loansystem.visual.panel.StartPage.java

private void graficoPrestamoXMes2() {
    ArrayList<GraficoEntidad> graficos;
    graficos = gDao.obtenerPrestamosPorMes();

    if (graficos.size() > 0) {
        DefaultCategoryDataset datos = new DefaultCategoryDataset();

        for (GraficoEntidad result : graficos) {
            datos.setValue(result.getValor(), result.getSerie(), result.getValorEje());
        }/*from www .j av  a 2 s  .  c  om*/

        dibujarGrafico(datos, BAR, "Registros Por Mes", "Mes", "Prstamos", PlotOrientation.VERTICAL,
                pnelPrestamosMes);

    }

}

From source file:Simulator.PerformanceCalculation.java

public JPanel waitTime1() {
    LinkedHashSet no = new LinkedHashSet();
    LinkedHashMap<Integer, ArrayList<Double>> wait1 = new LinkedHashMap<>();

    for (Map.Entry<Integer, TraceObject> entry : l.getLocalTrace().entrySet()) {
        TraceObject traceObject = entry.getValue();

        if (wait1.get(traceObject.getSurgeonId()) == null) {
            ArrayList details = new ArrayList();
            details.add(traceObject.getWaitTime1());
            wait1.put(traceObject.getSurgeonId(), details);
        } else {/*  ww  w .  j av a  2 s  . c  om*/
            wait1.get(traceObject.getSurgeonId()).add(traceObject.getWaitTime1());
        }

        no.add(traceObject.getSurgeonId());
    }
    String[] column = new String[no.size()];

    String series1 = "Wait Time 1";
    for (int i = 0; i < no.size(); i++) {
        column[i] = "Surgeon " + (i + 1);
    }

    DefaultCategoryDataset dataset = new DefaultCategoryDataset();

    LinkedHashMap<Integer, Double> average = new LinkedHashMap<>();
    for (Map.Entry<Integer, ArrayList<Double>> entry : wait1.entrySet()) {
        Integer integer = entry.getKey();
        ArrayList<Double> arrayList = entry.getValue();
        double total = 0;
        for (Double double1 : arrayList) {
            total += double1;
        }
        average.put(integer, total / arrayList.size());
    }

    for (int i = 1; i <= average.size(); i++) {
        dataset.addValue(Math.round(average.get(i) / 600), series1, column[i - 1]);
    }
    JFreeChart chart = ChartFactory.createBarChart("Wait Time 1", // chart title
            "Surgeon ID", // domain axis label
            "Days", // range axis label
            dataset, // data
            PlotOrientation.VERTICAL, // orientation
            true, // include legend
            true, // tooltips?
            false // URLs?
    );

    return new ChartPanel(chart);
}

From source file:org.miloss.fgsms.services.rs.impl.reports.ws.MeanTimeBetweenFailureByService.java

/**
 * {@inheritDoc}// www.ja  v  a 2 s . c om
 */
@Override
public void generateReport(OutputStreamWriter data, List<String> urls, String path, List<String> files,
        TimeRange range, String currentuser, SecurityWrapper classification, WebServiceContext ctx)
        throws IOException {

    DefaultCategoryDataset set = new DefaultCategoryDataset();
    JFreeChart chart = null;
    data.append("<hr /><h2>").append(GetDisplayName()).append("</h2>");
    data.append(GetHtmlFormattedHelp() + "<br />");
    data.append(
            "<table class=\"table table-hover\"><tr><th>URL</th><th>MTBF (ms)</th><th>Timespan</th><th>XML Duration Value</th></tr>");

    for (int i = 0; i < urls.size(); i++) {
        if (!isPolicyTypeOf(urls.get(i), PolicyType.TRANSACTIONAL)) {
            continue;
        }
        //https://github.com/mil-oss/fgsms/issues/112
        if (!UserIdentityUtil.hasReadAccess(currentuser, "getReport", urls.get(i), classification, ctx)) {
            continue;
        }
        String url = Utility.encodeHTML(BaseReportGenerator.getPolicyDisplayName(urls.get(i)));
        try {
            long mtbf = meanTimeBetweenFailures(urls.get(i), range);
            Duration newDuration = df.newDuration(mtbf);
            data.append("<tr><td>").append(url).append("</td><td>");
            if (mtbf == -1 || mtbf == 0) {
                data.append("Never</td><td>0</td><td>0</d></tr>");
            } else {
                data.append(mtbf + "").append("ms</td><td>").append(Utility.durationToString(newDuration))
                        .append("</td><td>").append(newDuration.toString()).append("</td></tr>");
            }
            if (mtbf > 0) {
                set.addValue(mtbf, url, url);
            }

        } catch (Exception ex) {
            data.append("0 bytes</td></tr>");
            log.log(Level.ERROR, "Error opening or querying the database.", ex);
        }
    }
    chart = org.jfree.chart.ChartFactory.createBarChart(GetDisplayName(), "Service URL", "", set,
            PlotOrientation.HORIZONTAL, true, false, false);
    data.append("</table>");
    try {
        if (set.getRowCount() != 0) {
            ChartUtilities.saveChartAsPNG(new File(
                    path + getFilePathDelimitor() + "image_" + this.getClass().getSimpleName() + ".png"), chart,
                    1500, pixelHeightCalc(set.getRowCount()));
            data.append("<img src=\"image_").append(this.getClass().getSimpleName()).append(".png\">");
            files.add(path + getFilePathDelimitor() + "image_" + this.getClass().getSimpleName() + ".png");
        }
    } catch (IOException ex) {
        log.log(Level.ERROR, "Error saving chart image for request", ex);
    }

}

From source file:playground.dgrether.signalsystems.utils.DgSignalPlanChart.java

public void addData(SortedSet<SignalGroupStateChangedEvent> systemEvents) {
    this.dataset = new DefaultCategoryDataset();
    Integer i = 0;/*ww  w .j a  v  a  2s .  co m*/
    Map<Id, SignalGroupStateChangedEvent> id2lastStateChangeEventMap = new HashMap<Id, SignalGroupStateChangedEvent>();
    for (SignalGroupStateChangedEvent e : systemEvents) {
        if (e.getTime() < this.tMin) {
            continue;
        } else if (e.getTime() > this.tMax) {
            break;
        } else {
            SignalGroupStateChangedEvent lastStateChange = id2lastStateChangeEventMap.get(e.getSignalGroupId());
            if (lastStateChange == null) {
                //process initial state
                this.dataset.addValue(e.getTime(), i, e.getSignalGroupId());
                log.info(
                        "added value: " + e.getTime() + " group id " + e.getSignalGroupId() + " row key: " + i);
                setSeriesColor(i, null);
            } else {
                //process state
                double duration = e.getTime() - lastStateChange.getTime();
                this.dataset.addValue(duration, i, lastStateChange.getSignalGroupId());
                log.info("added value: " + duration + " group id " + lastStateChange.getSignalGroupId()
                        + " row key: " + i);
                this.setSeriesColor(i, lastStateChange.getNewState());
            }
            i++;
            id2lastStateChangeEventMap.put(e.getSignalGroupId(), e);
        }
    }

}

From source file:org.jfree.chart.demo.MouseOverDemo1.java

private static CategoryDataset createDataset() {
    String s = "First";
    String s1 = "Second";
    String s2 = "Third";
    String s3 = "Category 1";
    String s4 = "Category 2";
    String s5 = "Category 3";
    String s6 = "Category 4";
    String s7 = "Category 5";
    DefaultCategoryDataset defaultcategorydataset = new DefaultCategoryDataset();
    defaultcategorydataset.addValue(1.0D, s, s3);
    defaultcategorydataset.addValue(4D, s, s4);
    defaultcategorydataset.addValue(3D, s, s5);
    defaultcategorydataset.addValue(5D, s, s6);
    defaultcategorydataset.addValue(5D, s, s7);
    defaultcategorydataset.addValue(5D, s1, s3);
    defaultcategorydataset.addValue(7D, s1, s4);
    defaultcategorydataset.addValue(6D, s1, s5);
    defaultcategorydataset.addValue(8D, s1, s6);
    defaultcategorydataset.addValue(4D, s1, s7);
    defaultcategorydataset.addValue(4D, s2, s3);
    defaultcategorydataset.addValue(3D, s2, s4);
    defaultcategorydataset.addValue(2D, s2, s5);
    defaultcategorydataset.addValue(3D, s2, s6);
    defaultcategorydataset.addValue(6D, s2, s7);
    return defaultcategorydataset;
}

From source file:org.matsim.counts.algorithms.graphs.CountsLoadCurveGraph.java

public CountsLoadCurveGraph(final List<CountSimComparison> ccl, final int iteration, final String filename) {
    super(ccl, iteration, filename, filename);
    this.dataset0 = new DefaultCategoryDataset();
    // TRRE:  this.dataset1 = new DefaultCategoryDataset();
}