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:com.modeln.build.ctrl.charts.CMnPatchCountChart.java

/**
 * Create a chart representing the number patches grouped by time interval.
 * The data passed in the hashtable is a list of the time intervals and
 * the value is the number of patch requests for each interval.
 *
 * @param  data   Hashtable cnotaining the time intervals and corresponding counts
 * @param  label  Count label//from  w  w w .  ja  va  2s  .  c o m
 *
 * @return Bar chart representing the interval and count information
 */
public static final JFreeChart getPatchesByIntervalChart(Hashtable<CMnTimeInterval, Integer> data,
        String label) {
    JFreeChart chart = null;

    String title = "Patches per " + label;
    String nameLabel = label;
    String valueLabel = "Patches";

    // Sort the data by date
    Vector<CMnTimeInterval> intervals = new Vector<CMnTimeInterval>();
    Enumeration intervalList = data.keys();
    while (intervalList.hasMoreElements()) {
        intervals.add((CMnTimeInterval) intervalList.nextElement());
    }
    Collections.sort(intervals);

    // Populate the dataset with data
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    Iterator keyIter = intervals.iterator();
    while (keyIter.hasNext()) {
        CMnTimeInterval interval = (CMnTimeInterval) keyIter.next();
        Integer value = data.get(interval);
        dataset.addValue(value, valueLabel, interval.getName());
    }

    // Create the chart
    chart = ChartFactory.createBarChart(title, /*title*/
            nameLabel, /*categoryAxisLabel*/
            valueLabel, /*valueAxisLabel*/
            dataset, /*dataset*/
            PlotOrientation.VERTICAL, /*orientation*/
            false, /*legend*/
            false, /*tooltips*/
            false /*urls*/
    );

    // get a reference to the plot for further customization...
    CategoryPlot plot = (CategoryPlot) chart.getPlot();
    //chartFormatter.formatMetricChart(plot, "min");

    // Set the chart colors
    plot.setBackgroundPaint(Color.white);
    plot.setDomainGridlinePaint(Color.lightGray);
    plot.setRangeGridlinePaint(Color.lightGray);

    // set the range axis to display integers only...
    NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());

    // disable bar outlines...
    BarRenderer renderer = (BarRenderer) plot.getRenderer();
    renderer.setDrawBarOutline(false);
    renderer.setShadowVisible(false);
    final GradientPaint gp = new GradientPaint(0.0f, 0.0f, Color.blue, 0.0f, 0.0f, Color.blue);
    renderer.setSeriesPaint(0, gp);

    // Set the label orientation
    CategoryAxis domainAxis = plot.getDomainAxis();
    domainAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_45);

    return chart;
}

From source file:com.redhat.thermostat.byteman.plot.impl.TestPlotRenderer.java

void renderToFile(Collection<PlotRecord> records, String filename) throws Exception {
    DefaultCategoryDataset ds = new DefaultCategoryDataset();
    for (PlotRecord re : records) {
        Long label = re.getPeriodStart() + ((re.getPeriodEnd() - re.getPeriodStart()) / 2);
        ds.addValue(re.getValue(), re.getCategory(), label);
    }/*w  w w .  j av  a 2  s.  com*/
    JFreeChart chart = ChartFactory.createStackedBarChart(EMPTY_STRING, EMPTY_STRING, EMPTY_STRING, ds,
            PlotOrientation.VERTICAL, false, true, false);
    CategoryPlot plot = (CategoryPlot) chart.getPlot();
    plot.setBackgroundPaint(toColor("#FFFFFFFF"));
    plot.setBackgroundImageAlpha((float) 0.0d);
    plot.setDomainGridlinesVisible(true);
    plot.setRangeGridlinePaint(toColor("#FFAAAAAA"));
    //        plot.getRangeAxis().setRange(new Range(ds.getMin(), ds.getMax() * 1.1));
    plot.getRangeAxis().setStandardTickUnits(NumberAxis.createIntegerTickUnits());
    //        plot.getRangeAxis().setLabel(cf.rangeAxisLabel);
    //        colorAxis(plot.getRangeAxis());
    //        colorAxis(plot.getDomainAxis());
    //        plot.getDomainAxis().setCategoryLabelPositions(CategoryLabelPositions.createUpRotationLabelPositions(Math.PI * 0.12d));
    //        plot.getDomainAxis().setLowerMargin(cf.domainAxisLowerMargin);
    //        plot.getDomainAxis().setUpperMargin(cf.domainAxisUpperMargin);
    //        plot.getDomainAxis().setLabel(cf.domainAxisLabel);
    BarRenderer3D barrenderer = new StackedBarRenderer3D(16.0d, 12.0d);
    barrenderer.setSeriesPaint(0, toColor("#00FFFFFF"));
    barrenderer.setSeriesPaint(1, toColor("#BB669900"));
    barrenderer.setSeriesPaint(2, toColor("#BBFF8800"));
    barrenderer.setWallPaint(toColor("#FFEEEEEE"));
    //        barrenderer.setBaseItemLabelsVisible(cf.baseItemLabelsVisible);
    barrenderer.setShadowVisible(false);
    barrenderer.setItemMargin(0.0d);
    plot.setRenderer(barrenderer);
    plot.setOutlineVisible(false);

    chartToSvg(chart, 1024, 600, filename);
}

From source file:sernet.gs.ui.rcp.main.bsi.views.chart.UmsetzungBarChart.java

protected Object createBarDataset() throws CommandException {
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    MassnahmenSummaryHome dao = new MassnahmenSummaryHome();

    Map<String, Integer> items = dao.getUmsetzungenSummary();
    Set<Entry<String, Integer>> entrySet = items.entrySet();
    for (Entry<String, Integer> entry : entrySet) {
        dataset.addValue(entry.getValue(), getLabel(entry.getKey()), getLabel(entry.getKey()));
    }// ww  w .  ja va 2  s  . c  om
    return dataset;
}

From source file:vn.edu.vttu.ui.PanelStatiticsRevenue.java

private void showChart(String title, String begin, String end) {
    SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    int row = tbResult.getRowCount();
    for (int i = 0; i < row; i++) {
        float value = 0;
        try {//from   w  w w.  j a v a 2s  .c o  m
            try {
                value = Float.parseFloat(String.valueOf(tbResult.getValueAt(i, 3)).trim().replaceAll("\\.", ""))
                        / 1000;
            } catch (Exception e) {
                value = Float.parseFloat(String.valueOf(tbResult.getValueAt(i, 3)).trim().replaceAll(",", ""))
                        / 1000;
            }
        } catch (Exception e) {
            value = 0;
        }
        String date = String.valueOf(tbResult.getValueAt(i, 0)).trim();

        dataset.addValue(value, "Doanh Thu", date);
    }

    JFreeChart chart = ChartFactory.createLineChart(
            "TH?NG K DOANH THU\nT " + title + " " + begin + " ?N " + title + " " + end, title,
            "S Ti?n(?n v: nghn ng)", dataset);
    CategoryPlot p = chart.getCategoryPlot();
    p.setRangeGridlinePaint(Color.black);
    ChartPanel CP = new ChartPanel(chart);
    pnChart.removeAll();
    pnChart.add(CP);
    pnChart.updateUI();
    pnChart.repaint();
    //ChartFrame frame = new ChartFrame("Thng k doanh thu", chart);
    //frame.setSize(450, 350);
    //frame.setVisible(true);
}

From source file:WeeklyReport.Sections.Bookings.java

private JFreeChart bookingsByTradelaneChart() {
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    Map<Double, Map<String, String>> map = new CargoQuoteType().bookingsByTradeLane();
    map.entrySet().stream().forEach((mapEntry) -> {
        Map<String, String> m1 = mapEntry.getValue();
        m1.entrySet().stream().forEach((pair) -> {
            dataset.setValue(mapEntry.getKey(), pair.getKey(), pair.getValue());
        });/*ww  w  .jav  a  2 s. com*/
    });
    JFreeChart barChart = ChartFactory.createBarChart3D("Bookings by Trade Lane", "Company", "Cubic Meters",
            dataset, PlotOrientation.VERTICAL, true, true, false);
    barChart.setBackgroundPaint(Color.WHITE);
    CategoryPlot categoryPlot = barChart.getCategoryPlot();
    CategoryAxis domainAxis = categoryPlot.getDomainAxis();
    BarRenderer br = (BarRenderer) categoryPlot.getRenderer();
    if (map.values().stream().mapToInt((list) -> list.size()).count() > 2) {
        domainAxis.setCategoryLabelPositions(CategoryLabelPositions.UP_45);
    }
    categoryPlot.setBackgroundPaint(Color.WHITE);
    categoryPlot.setRangeGridlinePaint(Color.BLACK);
    return barChart;
}

From source file:com.mxgraph.examples.swing.chart.BarChartDemo1.java

/**
 * Returns a sample dataset./*from w  w  w  .  ja  va  2s . co m*/
 *
 * @return The dataset.
 */
public static CategoryDataset createDataset() {

    // row keys...
    String series1 = "First";
    String series2 = "Second";
    String series3 = "Third";

    // column keys...
    String category1 = "Category 1";
    String category2 = "Category 2";
    String category3 = "Category 3";
    String category4 = "Category 4";
    String category5 = "Category 5";

    // create the dataset...
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();

    dataset.addValue(1.0, series1, category1);
    dataset.addValue(4.0, series1, category2);
    dataset.addValue(3.0, series1, category3);
    dataset.addValue(5.0, series1, category4);
    dataset.addValue(5.0, series1, category5);

    dataset.addValue(5.0, series2, category1);
    dataset.addValue(7.0, series2, category2);
    dataset.addValue(6.0, series2, category3);
    dataset.addValue(8.0, series2, category4);
    dataset.addValue(4.0, series2, category5);

    dataset.addValue(4.0, series3, category1);
    dataset.addValue(3.0, series3, category2);
    dataset.addValue(2.0, series3, category3);
    dataset.addValue(3.0, series3, category4);
    dataset.addValue(6.0, series3, category5);

    return dataset;

}

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

/**
 * {@inheritDoc}/*from w w w  . j  a  v a2  s. c o m*/
 */
@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;
        long itemcount = 0;
        ResultSet rs = null;
        DefaultCategoryDataset set = new DefaultCategoryDataset();
        JFreeChart chart = null;
        data.append("<hr /><h2>").append(GetDisplayName()).append("</h2>");
        data.append(
                "This represents the total combined request and response message size of each service grouped by method.<br />");
        //add description
        data.append(
                "<table class=\"table table-hover\"><tr><th>URL</th><th>Action</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)));
            try {
                List<String> actions = getSoapActions(urls.get(i), con);

                itemcount = actions.size();
                for (int k = 0; k < actions.size(); k++) {
                    long count = -1;

                    try {
                        cmd = con.prepareStatement(
                                "select SUM(responseSize + requestSize) as messagesSize from RawData where URI=? and "
                                        + "(UTCdatetime > ?) and (UTCdatetime < ?) and soapaction=? and (requestsize>=0) and (responsesize>=0);");
                        cmd.setString(1, urls.get(i));
                        cmd.setLong(2, range.getStart().getTimeInMillis());
                        cmd.setLong(3, range.getEnd().getTimeInMillis());
                        cmd.setString(4, actions.get(k));

                        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);
                    }

                    data.append("<tr><td>").append(url).append("</td><td>");
                    data.append(Utility.encodeHTML(actions.get(k))).append("</td><td>");
                    if (count >= 0) {
                        data.append(count + " bytes");
                    } else {
                        data.append("N/A");
                    }
                    data.append("</td></tr>");
                    set.addValue(count, actions.get(k), 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 {
            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.nosleep.superanalyzer.analysis.views.TimeView.java

private void createPanel() {
    _comboBox = new JComboBox(_analysis.getComboBoxItems());
    _comboBox.addActionListener(new java.awt.event.ActionListener() {
        public void actionPerformed(java.awt.event.ActionEvent e) {
            refreshDataset();/*from   w  ww  . j a  v  a 2 s.  c om*/
        }
    });

    _dataset = new DefaultCategoryDataset();

    createChart();
    _chartPanel = new ChartPanel(_chart);
    _chartPanel.setMouseWheelEnabled(true);

    refreshDataset();
}

From source file:org.fhcrc.cpl.toolbox.gui.chart.PanelWithBarChart.java

protected void init() {
    dataset = new DefaultCategoryDataset();
    JFreeChart chart = ChartFactory.createBarChart(null, null, null, dataset, PlotOrientation.VERTICAL, true,
            false, false);/*from ww  w. ja v a 2  s .com*/

    init(chart.getPlot());
}

From source file:com.swordlord.gozer.components.fop.graph.GFopStackedBarChart.java

public GFopStackedBarChart(IGozerFrameExtension gfe, GStackedBarChart chart) {
    super(gfe);/*from w  ww .  j a  v a2  s  .  c  om*/

    DataBindingMember dbMemberRowKey = chart.getDataBindingMemberRowKey();
    DataBindingMember dbMemberColKey = chart.getDataBindingMemberColKey();
    DataBindingMember dbMemberValue = chart.getDataBindingMemberValue();
    DataBindingManager dbManager = chart.getDataBindingManager();

    DefaultCategoryDataset dcd = new DefaultCategoryDataset();

    List<DataRowBase> rowTests = dbManager.getRows(dbMemberValue);
    for (int j = 0; j < rowTests.size(); j++) {
        DataRowBase row = rowTests.get(j);

        String strKey = row.getPropertyAsStringForce(dbMemberRowKey.getRelativePathWithField());

        dcd.setValue(row.getPropertyAsInt(dbMemberValue.getRelativePathWithField()), strKey,
                row.getPropertyAsStringForce(dbMemberColKey.getRelativePathWithField()));
    }

    JFreeChart fc = ChartFactory.createStackedBarChart(chart.getTitle(), chart.getCategoryAxisLabel(),
            chart.getValueAxisLabel(), dcd, chart.getOrientation(), chart.getLegend(), false, false);

    // Do this in a more static way!
    StackedBarRenderer.setDefaultBarPainter(new StandardBarPainter());

    //chart.setBackgroundPaint(Color.white);
    if (chart.getSubTitle() != null) {
        fc.addSubtitle(new TextTitle(chart.getSubTitle()));
    }

    CategoryPlot plot = fc.getCategoryPlot();
    plot.setBackgroundPaint(Color.white);
    plot.setDrawingSupplier(chart.getDrawingSupplier());

    CategoryAxis domainAxis = plot.getDomainAxis();
    domainAxis.setVisible(chart.getCategoryAxisVisible());

    ValueAxis valueAxis = plot.getRangeAxis();
    valueAxis.setVisible(chart.getValueAxisVisible());

    /*
    //CategoryItemRenderer renderer = (CategoryItemRenderer) plot.getRenderer();
    for (int j = 0; j < rowKey.length; j++)
    {
       renderer.setSeriesItemLabelGenerator(j, new LabelGenerator(j, rowKey[j]));
       renderer.setSeriesItemLabelsVisible(j, true);
    }
    */
    StackedBarRenderer renderer = new StackedBarRenderer();

    for (int j = 0; j < dcd.getRowCount(); j++) {
        renderer.setSeriesItemLabelGenerator(j, new StandardCategoryItemLabelGenerator());
        renderer.setSeriesItemLabelsVisible(j, true);
    }

    //renderer.setLegendItemLabelGenerator(new LabelGenerator());
    renderer.setShadowVisible(false);

    plot.setRenderer(renderer);

    _image = new ChartImage("chart", fc, chart.getWidth(800), chart.getHeight(800));
}