Example usage for org.jfree.chart JFreeChart getCategoryPlot

List of usage examples for org.jfree.chart JFreeChart getCategoryPlot

Introduction

In this page you can find the example usage for org.jfree.chart JFreeChart getCategoryPlot.

Prototype

public CategoryPlot getCategoryPlot() 

Source Link

Document

Returns the plot cast as a CategoryPlot .

Usage

From source file:net.sf.dynamicreports.design.transformation.chartcustomizer.SeriesColorsByNameCustomizer.java

@Override
public void customize(JFreeChart chart, ReportParameters reportParameters) {
    if (chart.getPlot() instanceof CategoryPlot) {
        CategoryItemRenderer renderer = chart.getCategoryPlot().getRenderer();
        CategoryDataset dataset = chart.getCategoryPlot().getDataset();
        Set<String> legend = new LinkedHashSet<String>();
        if (dataset != null) {
            for (int i = 0; i < dataset.getRowCount(); i++) {
                String key = (String) dataset.getRowKey(i);
                if (renderer instanceof GroupedStackedBarRenderer) {
                    key = StringUtils.substringAfter(key, GroupedStackedBarRendererCustomizer.GROUP_SERIES_KEY);
                    legend.add(key);//from  w  w w .j  a va  2 s  .c  o  m
                }
                renderer.setSeriesPaint(i, seriesColorsByName.get(key));
            }
        }
        if (!legend.isEmpty()) {
            LegendItemCollection legendItems = new LegendItemCollection();
            for (String item : legend) {
                legendItems.add(new LegendItem(item, seriesColorsByName.get(item)));
            }
            chart.getCategoryPlot().setFixedLegendItems(legendItems);
        }
    } else if (chart.getPlot() instanceof PiePlot) {
        PiePlot plot = (PiePlot) chart.getPlot();
        PieDataset dataset = plot.getDataset();
        for (int i = 0; i < dataset.getItemCount(); i++) {
            String key = (String) dataset.getKey(i);
            plot.setSectionPaint(key, seriesColorsByName.get(key));
        }
    } else if (chart.getPlot() instanceof XYPlot) {
        XYItemRenderer renderer = chart.getXYPlot().getRenderer();
        XYDataset dataset = chart.getXYPlot().getDataset();
        for (int i = 0; i < dataset.getSeriesCount(); i++) {
            String key = (String) dataset.getSeriesKey(i);
            renderer.setSeriesPaint(i, seriesColorsByName.get(key));
        }
    }
}

From source file:gov.nih.nci.caintegrator.application.geneexpression.GeneExpressionPlotServiceImpl.java

private GeneExpressionPlot createLog2TypePlot(DefaultStatisticalCategoryDataset log2Dataset,
        GenomicValueResultsTypeEnum genomicValueResultsType) {
    GeneExpressionPlotImpl plot = new GeneExpressionPlotImpl();
    JFreeChart chart = createChart(log2Dataset, "Log2 " + genomicValueResultsType.getValue() + rangeAxisNote);
    chart.getCategoryPlot().setRenderer(cusomtizeStatisticalBarChart(chart));
    plot.setPlotChart(chart);/*from ww w.  j  a  v a  2s .com*/
    plot.setWidth(retrievePlotWidth(log2Dataset));
    return plot;
}

From source file:Classes_Home.CriarGrafico.java

public void criargrafico(JPanel jPanel3) {
        String pcs[] = { "'HP'", "'IBM'", "'LENOVO'", "'POSITIVO'", "'NACIONAL'" };
        for (int i = 0; i <= 4; i++) {
            String query = "SELECT * FROM `cpu` WHERE marca = " + pcs[i];

            try {
                st = connection.createStatement();
                rs = st.executeQuery(query);
                if (rs.last()) {
                    int aux = rs.getRow();
                    vetorParaGrafico[i] = aux;
                }//from  w ww .ja  v a 2s  . c  om
            } catch (Exception e) {
                e.printStackTrace();
            }
        }

        DefaultCategoryDataset dataset = new DefaultCategoryDataset();
        dataset.setValue(vetorParaGrafico[0], "Quantidade", "HP");
        dataset.setValue(vetorParaGrafico[1], "Quantidade", "IBM");
        dataset.setValue(vetorParaGrafico[2], "Quantidade", "LENOVO");
        dataset.setValue(vetorParaGrafico[3], "Quantidade", "POSITIVO");
        dataset.setValue(vetorParaGrafico[4], "Quantidade", "NACIONAL");

        JFreeChart chart = ChartFactory.createBarChart3D(null, null, "Quantidade", dataset,
                PlotOrientation.VERTICAL, false, true, false);
        CategoryPlot p = chart.getCategoryPlot();
        CategoryItemRenderer renderer = p.getRenderer();
        renderer.setSeriesPaint(0, new Color(80, 151, 204));
        p.setRangeGridlinePaint(Color.BLACK);
        ChartPanel panel = new ChartPanel(chart);
        panel.setDomainZoomable(true);
        panel.setVisible(true);
        jPanel3.setLayout(new BorderLayout());
        jPanel3.add(panel, BorderLayout.CENTER);
        jPanel3.revalidate();
        jPanel3.repaint();
        System.gc();
    }

From source file:net.sf.dynamicreports.test.jasper.chart.GroupedStackedBarChartData1Test.java

@Override
public void test() {
    super.test();

    numberOfPagesTest(1);/*w ww  .j a v  a 2  s  . c o  m*/

    String[] categories = new String[] { "value1", "value2" };
    String[] series = new String[] {
            "group1" + GroupedStackedBarRendererCustomizer.GROUP_SERIES_KEY + "series1",
            "group1" + GroupedStackedBarRendererCustomizer.GROUP_SERIES_KEY + "series2",
            "group2" + GroupedStackedBarRendererCustomizer.GROUP_SERIES_KEY + "series1",
            "group2" + GroupedStackedBarRendererCustomizer.GROUP_SERIES_KEY + "series2" };
    Number[][] values = new Number[][] { { 1d, 3d, 5d, 7d }, { 7d, 5d, 3d, 1d } };
    chartCountTest("summary.chart1", 1);
    chartCategoryCountTest("summary.chart1", 0, 2);
    chartSeriesCountTest("summary.chart1", 0, 4);
    chartDataTest("summary.chart1", 0, categories, series, values);

    values = new Number[][] { { 1d / 4 * 100, 3d / 4 * 100, 5d / 12 * 100, 7d / 12 * 100 },
            { 7d / 12 * 100, 5d / 12 * 100, 3d / 4 * 100, 1d / 4 * 100 } };
    chartCountTest("summary.chart3", 1);
    chartCategoryCountTest("summary.chart3", 0, 2);
    chartSeriesCountTest("summary.chart3", 0, 4);
    chartDataTest("summary.chart3", 0, categories, series, values);

    values = new Number[][] { { null, 3d, 5d, 7d }, { 7d, 5d, 3d, 1d } };
    chartCountTest("summary.chart5", 1);
    chartCategoryCountTest("summary.chart5", 0, 2);
    chartSeriesCountTest("summary.chart5", 0, 4);
    chartDataTest("summary.chart5", 0, categories, series, values);
    JFreeChart chart = getChart("summary.chart5", 0);
    CategoryDataset dataset = chart.getCategoryPlot().getDataset();
    Assert.assertEquals("row key", "group1" + GroupedStackedBarRendererCustomizer.GROUP_SERIES_KEY + "series2",
            dataset.getRowKey(0));
    Assert.assertEquals("row key", "group1" + GroupedStackedBarRendererCustomizer.GROUP_SERIES_KEY + "series1",
            dataset.getRowKey(1));
    Assert.assertEquals("row key", "group2" + GroupedStackedBarRendererCustomizer.GROUP_SERIES_KEY + "series2",
            dataset.getRowKey(2));

    series = new String[] { "group1" + GroupedStackedBarRendererCustomizer.GROUP_SERIES_KEY + "Column4",
            "group1" + GroupedStackedBarRendererCustomizer.GROUP_SERIES_KEY + "Column5",
            "group2" + GroupedStackedBarRendererCustomizer.GROUP_SERIES_KEY + "Column4",
            "group2" + GroupedStackedBarRendererCustomizer.GROUP_SERIES_KEY + "Column5" };
    values = new Number[][] { { 4d, 6d, 12d, 14d }, { 12d, 14d, 4d, 6d } };
    chartCountTest("summary.chart2", 1);
    chartCategoryCountTest("summary.chart2", 0, 2);
    chartSeriesCountTest("summary.chart2", 0, 4);
    chartDataTest("summary.chart2", 0, categories, series, values);

    values = new Number[][] { { 4d / 10 * 100, 6d / 10 * 100, 12d / 26 * 100, 14d / 26 * 100 },
            { 12d / 26 * 100, 14d / 26 * 100, 4d / 10 * 100, 6d / 10 * 100 } };
    chartCountTest("summary.chart4", 1);
    chartCategoryCountTest("summary.chart4", 0, 2);
    chartSeriesCountTest("summary.chart4", 0, 4);
    chartDataTest("summary.chart4", 0, categories, series, values);
}

From source file:bbank.CurrentStockWindow.java

/**
 * Creates new form CurrentStockWindow/*from ww  w  . j  ava 2 s  . c  o m*/
 */
public CurrentStockWindow() {
    initComponents();
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    BloodStock.CalculateTotalBlood();
    dataset.addValue(BloodStock.total_A_accepted, "", "Total Accepted A");
    dataset.addValue(BloodStock.total_A_rejected, "", "Total Rejected A");
    dataset.addValue(BloodStock.total_B_accepted, "", "Total Accepted B");
    dataset.addValue(BloodStock.total_B_rejected, "", "Total Rejected B");
    dataset.addValue(BloodStock.total_O_accepted, "", "Total Accepted O");
    dataset.addValue(BloodStock.total_O_rejected, "", "Total Rejected O");

    JFreeChart chart = ChartFactory.createBarChart("Current Total Blood Stock", "Blood type", "Amount (litres)",
            dataset, PlotOrientation.VERTICAL, false, false, false);
    CategoryPlot catPlot = chart.getCategoryPlot();
    catPlot.setRangeGridlinePaint(Color.BLACK);

    ChartPanel chartpanel = new ChartPanel(chart);
    jPanel1.removeAll();
    jPanel1.add(chartpanel);
    jPanel1.validate();
}

From source file:UserInterface.JFreeChartJPanel.java

public JFreeChartJPanel(VitalSign vs, JPanel upc) {
    initComponents();/*  www  .ja va  2 s  .  co m*/

    this.vs = vs;
    this.upc = upc;

    int rr = (vs.getRespiratoryrate());
    int hr = vs.getHeartrate();
    int bp = vs.getBloodpressure();
    double w = vs.getWeight();
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    dataset.setValue(rr, "", "Respiratory Rate");
    dataset.setValue(hr, "", "Heart Rate");
    dataset.setValue(bp, "", "Blood Pressure");
    dataset.setValue(w, "", "Weight");

    //    
    org.jfree.chart.JFreeChart chart = ChartFactory.createBarChart("VitalSign", "Vital Signs", "Range", dataset,
            PlotOrientation.VERTICAL, false, true, false);
    CategoryPlot plot = chart.getCategoryPlot();
    plot.setRangeGridlinePaint(Color.black);
    ChartFrame frame = new ChartFrame("Bar Chart for _---_", chart);
    frame.setVisible(true);
    frame.setSize(600, 600);
}

From source file:view.HistogramFloat.java

public HistogramFloat(String applicationTitle, String TituloGrafico, List<StringFloat> Lista) {
    super(applicationTitle);

    String legenda = Lista.get(Lista.size() - 1).getDescricao();
    DefaultCategoryDataset DatasetGrafico = new DefaultCategoryDataset();
    int i;// w  w w . ja v  a  2 s.c  o  m
    for (i = 0; i < Lista.size() - 1; i++) {
        DatasetGrafico.addValue(Lista.get(i).getValor(), legenda, Lista.get(i).getDescricao());

    }

    //JFreeChart grafico = ChartFactory.createBarChart(TituloGrafico, "Legends", "Value of Quality Index using "+legenda, DatasetGrafico);

    JFreeChart grafico = ChartFactory.createLineChart(TituloGrafico, "Number of Clusters", "Index of Quality",
            DatasetGrafico, PlotOrientation.VERTICAL, true, true, true);
    CategoryPlot plot = grafico.getCategoryPlot();
    LineAndShapeRenderer renderer = new LineAndShapeRenderer();
    plot.setRenderer(renderer);

    //createBarChart(TituloGrafico, "Legends", "Value of Quality Index using "+legenda, DatasetGrafico);

    this.add(new ChartPanel(grafico));
    this.pack();
}

From source file:io.narayana.perf.product.BarChart.java

public JFreeChart generateChart(String title, String xaxisLabel, String yaxisLabel) {
    JFreeChart chart = ChartFactory.createBarChart(title, xaxisLabel, yaxisLabel, dataset,
            PlotOrientation.VERTICAL, true, false, false);
    CategoryPlot plot = chart.getCategoryPlot();
    NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();

    chart.setBackgroundPaint(Color.white);

    plot.setBackgroundPaint(Color.white);
    plot.setDomainGridlinesVisible(true);

    plot.setDomainGridlinePaint(Color.black);
    plot.setRangeGridlinePaint(Color.black);

    rangeAxis.setStandardTickUnits(NumberAxis.createStandardTickUnits());

    BarRenderer renderer = (BarRenderer) chart.getCategoryPlot().getRenderer();

    for (int i = 0; i < dataset.getRowCount(); i++) {
        Color color = i < COLORS.length ? COLORS[i] : COLORS[0];
        renderer.setSeriesPaint(i, color);
    }/*from ww w  .  j  av  a  2 s  . c o m*/

    return chart;
}

From source file:org.adempiere.apps.graph.GraphBuilder.java

private void setupCategoryChart(JFreeChart chart) {
    CategoryPlot plot = chart.getCategoryPlot();
    CategoryItemRenderer renderer = plot.getRenderer();
    renderer.setSeriesPaint(0, new Color(92 / 255f, 178 / 255f, 232 / 255f));
    renderer.setSeriesPaint(1, new Color(56 / 255f, 97 / 255f, 119 / 255f));
    renderer.setSeriesPaint(2, new Color(242 / 255f, 70 / 255f, 78 / 255f));
    renderer.setSeriesPaint(3, Color.orange);
    renderer.setSeriesPaint(4, new Color(147 / 255f, 196 / 255f, 51 / 255f));
    renderer.setSeriesPaint(5, new Color(210 / 255f, 247 / 255f, 91 / 255f));
    renderer.setSeriesPaint(6, new Color(129 / 255f, 235 / 255f, 249 / 255f));
    renderer.setSeriesPaint(7, new Color(60 / 255f, 84 / 255f, 8 / 255f));
    renderer.setSeriesPaint(8, new Color(0.8f, 0.8f, 0.8f));
}

From source file:org.pentaho.chart.plugin.jfreechart.chart.bar.JFreeStackedPercentBarChartGenerator.java

/**
 * Creates stacked percent bar chart and creates range axis for it.
 * </p>// w ww. jav  a  2  s. c om
 * @param chartDocContext Current chart's document context
 * @param data Current chart data
 * @return Returns JFree stacked percent bar chart.
 */
public JFreeChart createChart(final ChartDocumentContext chartDocContext, final ChartTableModel data) {
    final JFreeChart chart = super.createChart(chartDocContext, data);
    /*
     * Doing all the render stuff and then off to create range axis.
     * NOTE: The chart object will be updated.
     */
    ((StackedBarRenderer) chart.getCategoryPlot().getRenderer()).setRenderAsPercentages(true);
    createRangeAxis(chartDocContext, data, chart);
    return chart;
}