Example usage for org.jfree.chart ChartFactory createBarChart3D

List of usage examples for org.jfree.chart ChartFactory createBarChart3D

Introduction

In this page you can find the example usage for org.jfree.chart ChartFactory createBarChart3D.

Prototype

public static JFreeChart createBarChart3D(String title, String categoryAxisLabel, String valueAxisLabel,
        CategoryDataset dataset, PlotOrientation orientation, boolean legend, boolean tooltips, boolean urls) 

Source Link

Document

Creates a bar chart with a 3D effect.

Usage

From source file:org.tiefaces.components.websheet.chart.ChartHelper.java

/**
 * Create jfree bar chart.//w  ww .j  a va2  s .  c o m
 * 
 * @param chartData
 *            contain information gathered from excel chart object.
 * @param vertical
 *            chart orientation.
 * @return jfree line chart.
 */
public JFreeChart createBarChart3D(final ChartData chartData, final boolean vertical) {

    PlotOrientation orientation = PlotOrientation.VERTICAL;
    if (!vertical) {
        orientation = PlotOrientation.HORIZONTAL;
    }
    // create the chart...
    final JFreeChart chart = ChartFactory.createBarChart3D(chartData.getTitle(), // chart title
            chartData.getCatAx().getTitle(), // x axis label
            chartData.getValAx().getTitle(), // y axis label
            createDataset(chartData), // data
            orientation, true, // include legend
            false, // tooltips
            false // urls
    );

    setupBarStyle(chart, chartData);

    return chart;

}

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

/**
 * Creates and returns a sample vertical 3D bar chart.
 *
 * @return a sample vertical 3D bar chart.
 *//*www. jav a  2s  .com*/
public JFreeChart createVertical3DBarChart() {

    // create a default chart based on some sample data...
    final String title = this.resources.getString("bar.vertical3D.title");
    final String domain = this.resources.getString("bar.vertical3D.domain");
    final String range = this.resources.getString("bar.vertical3D.range");

    final CategoryDataset data = DemoDatasetFactory.createCategoryDataset();
    final JFreeChart chart = ChartFactory.createBarChart3D(title, domain, range, data, PlotOrientation.VERTICAL,
            true, true, false);

    // then customise it a little...
    chart.setBackgroundPaint(new GradientPaint(0, 0, Color.white, 1000, 0, Color.blue));
    final CategoryPlot plot = (CategoryPlot) chart.getPlot();
    plot.setForegroundAlpha(0.75f);
    return chart;

}

From source file:Output.SplitChart.java

public void drawLSEFixedDemandData(int[] selectIndex) {
    this.chartTitle = "24 Hour LSE Fixed Demand (Load Profile)";
    Object[][] lseData = this.amesFrame.getLSEData();

    this.dataset = new XYSeriesCollection();
    DefaultCategoryDataset dataset3D = new DefaultCategoryDataset();

    if ((selectIndex.length < 1) || (selectIndex[0] == 0)) {
        for (Object[] element : lseData) {
            XYSeries series = new XYSeries((String) element[0]);

            for (int j = 0; j < 24; j++) {
                series.add(j, Support.parseDouble(element[j + 3].toString()));
            }//from   w ww .  j  a v a  2 s .c o  m

            this.dataset.addSeries(series);
        }
    } else {
        int iDataNumber = selectIndex.length;

        for (int i = 0; i < iDataNumber; i++) {
            XYSeries series = new XYSeries((String) lseData[selectIndex[i] - 1][0]);

            for (int j = 0; j < 24; j++) {
                if (iDataNumber == 1) {
                    String temp = " " + j;
                    dataset3D.addValue(Support.parseDouble(lseData[selectIndex[i] - 1][j + 3].toString()),
                            lseData[selectIndex[i] - 1][0].toString(), temp);
                } else {
                    series.add(j, Support.parseDouble(lseData[selectIndex[i] - 1][j + 3].toString()));
                }

            }

            if (iDataNumber != 1) {
                this.dataset.addSeries(series);
            }
        }
    }

    if ((selectIndex.length == 1) && (selectIndex[0] != 0)) {
        this.chartTitle = (String) (lseData[selectIndex[0] - 1][0]);
        this.chartTitle = this.chartTitle + " 24 Hour Fixed Demand (Load Profile)";

        this.chart = ChartFactory.createBarChart3D(this.chartTitle, // chart title
                "Hour", // domain axis label
                "Power (MWs)", // range axis label
                dataset3D, // data
                PlotOrientation.VERTICAL, // orientation
                true, // include legend
                true, // tooltips
                false // urls
        );

        final CategoryPlot plot = this.chart.getCategoryPlot();
        final CategoryAxis axis = plot.getDomainAxis();
        axis.setCategoryLabelPositions(CategoryLabelPositions.createUpRotationLabelPositions(Math.PI / 8.0));

        final CategoryItemRenderer renderer = plot.getRenderer();
        renderer.setItemLabelsVisible(true);
        final BarRenderer r = (BarRenderer) renderer;
        r.setMaximumBarWidth(0.05);
    } else {
        // create the chart...
        this.chart = ChartFactory.createXYLineChart(this.chartTitle, // chart title
                "Hour", // x axis label
                "Power (MWs)", // y axis label
                this.dataset, // data
                PlotOrientation.VERTICAL, true, // include legend
                true, // tooltips
                false // urls
        );

        this.chart.setBackgroundPaint(Color.white);

        // get a reference to the plot for further customisation...
        final XYPlot plot = this.chart.getXYPlot();
        plot.setBackgroundPaint(Color.white);
        plot.setDomainGridlinePaint(Color.blue);
        plot.setRangeGridlinePaint(Color.blue);

        final XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer();
        XYToolTipGenerator generator = new StandardXYToolTipGenerator("{2}", new DecimalFormat("0.00"),
                new DecimalFormat("0.00"));
        renderer.setToolTipGenerator(generator);
        plot.setRenderer(renderer);

        NumberAxis xAxis = (NumberAxis) plot.getDomainAxis();
        xAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits());
        xAxis.setRange(0, 23.5);

    }

    this.chart.getTitle().setFont(this.font);
    this.chartPanel.setChart(this.chart);
}

From source file:com.athena.chameleon.engine.utils.PDFWriterUtil.java

/**
 * /*from  w w  w  .  java 2s  . co  m*/
 * chart 
 *
 * @param section chart   section ?
 * @param e chart   element
 * @throws Exception
 */
public static void setChart(PdfWriter writer, Section section, Element e) throws Exception {

    DefaultCategoryDataset dataset = new DefaultCategoryDataset();

    for (Element e1 : e.getChildren()) {
        if (!e1.getChild("column").getText().equals(FileType.DIRECTORY.toString())
                && !e1.getChild("column").getText().equals(FileType.SUM.toString())) {
            dataset.setValue(Integer.parseInt(e1.getChild("value").getText()), e.getAttributeValue("title"),
                    e1.getChild("column").getText());
        }
    }

    JFreeChart chart = ChartFactory.createBarChart3D(e.getAttributeValue("title"), "", "", dataset,
            PlotOrientation.VERTICAL, false, true, false);

    CategoryPlot plot = chart.getCategoryPlot();
    java.awt.Font labelFont = chart.getCategoryPlot().getDomainAxis().getLabelFont();
    plot.getDomainAxis().setLabelFont(new java.awt.Font(labelFont.getName(), Font.NORMAL, 6));
    plot.getDomainAxis().setTickLabelFont(new java.awt.Font(labelFont.getName(), Font.NORMAL, 6));

    PdfContentByte cb = writer.getDirectContent();
    PdfTemplate bar = cb.createTemplate(500, 150);
    Graphics2D g2d2 = new PdfGraphics2D(bar, 500, 150);
    Rectangle2D r2d2 = new Rectangle2D.Double(0, 0, 500, 150);
    chart.draw(g2d2, r2d2);
    g2d2.dispose();

    Image image = Image.getInstance(bar);
    image.setAlignment(com.itextpdf.text.Element.ALIGN_CENTER);
    section.add(image);
}

From source file:muh.avagadroYasasi.java

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed

    double p1, v1, t1, p2, t2, v2, m1, m2;

    //D=Double.parseDouble(jTextField1.getText());
    p1 = Double.parseDouble(jTextField2.getText());
    v1 = Double.parseDouble(jTextField3.getText());
    t1 = Double.parseDouble(jTextField4.getText());
    p2 = Double.parseDouble(jTextField1.getText());
    v2 = Double.parseDouble(jTextField5.getText());
    t2 = Double.parseDouble(jTextField6.getText());
    m1 = Double.parseDouble(jTextField7.getText());
    m2 = Double.parseDouble(jTextField8.getText());

    DefaultCategoryDataset dcd = new DefaultCategoryDataset();

    dcd.setValue(p1, "nceki Deerler", "Basn(p1)");
    dcd.setValue(v1, "nceki Deerler", "Hacim(v1)");
    dcd.setValue(t1, "nceki Deerler", "Scaklk(t1)");
    dcd.setValue(m1, "nceki Deerler", "Mol (m1)");
    dcd.setValue((p1 * v1) / (t1 * m1), "nceki Deerler", "p1*v1/t1*m1");
    dcd.setValue((p2 * v2) / (t2 * m2), "Sonraki Deerler", "p2*v2/t2*m2");
    dcd.setValue(p2, "Sonraki Deerler", "Basn(p2)");
    dcd.setValue(v2, "Sonraki Deerler", "Hacim(v2)");
    dcd.setValue(t2, "Sonraki Deerler", "Scaklk(t2)");
    dcd.setValue(m2, "Sonraki Deerler", "Mol (m2)");

    JFreeChart jchart = ChartFactory.createBarChart3D("p1*v1/t1*m1 = p2*v2/t2*m2", "Veriler", "Deerler", dcd,
            PlotOrientation.VERTICAL, true, true, false);

    CategoryPlot plot = jchart.getCategoryPlot();
    plot.setRangeGridlinePaint(Color.black);

    ChartFrame chartFrm = new ChartFrame("Grafiksel Gsterim", jchart, true);
    chartFrm.setVisible(true);//from www.ja va  2  s.  co m
    chartFrm.setSize(500, 400);// TODO add your handling code here:
}

From source file:Forms.SalesChart.java

private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed
    String sql = "SELECT * FROM soldtime WHERE cast(datetime as date)";
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();

    try {/*  ww w  .  ja v a  2 s . c  om*/
        Connection con = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/nafis", "root",
                "");

        Statement s = (Statement) con.prepareStatement(sql);

        ResultSet rs = s.executeQuery(sql);

        Map<String, Integer> m = new TreeMap<String, Integer>();

        int quantity = 0;
        //float sp=0;
        //float bp=0;
        String qua = "", sprice = "", bprice = "", date = "";
        while (rs.next()) {

            qua = rs.getString(3);
            /*sprice = rs.getString(4);
            bprice = rs.getString(5);*/
            date = rs.getString(6);
            date = date.substring(0, 10);

            //quantity=quantity+Integer.parseInt(qua);

            /*sp = sp + Float.parseFloat(sprice);
            bp = bp + Float.parseFloat(bprice);*/

            Integer oldVal = m.get(date);

            if (oldVal == null) {
                m.put(date, Integer.parseInt(qua));
            } else {
                m.put(date, oldVal + Integer.parseInt(qua));
            }

        }

        for (HashMap.Entry ma : m.entrySet()) {
            //System.out.println(m.getKey()+" "+m.getValue());

            dataset.setValue(Float.parseFloat(ma.getValue() + ""), "Items Sold", ma.getKey() + "");
        }

    } catch (Exception e) {
        e.printStackTrace();
    }

    /*dataset.setValue(50, "Date","Amount1");
    dataset.setValue(25, "Date","Amount2");
    dataset.setValue(30, "Date","Amount3");
    dataset.setValue(45, "Date","Amount4");*/
    JFreeChart chart = ChartFactory.createBarChart3D("SOLD BARCHART", "DATE", "PROFIT", dataset,
            PlotOrientation.VERTICAL, false, true, false);
    CategoryPlot p = chart.getCategoryPlot();
    p.setForegroundAlpha(0.5f);
    ChartFrame frame = new ChartFrame("Bar Chart", chart);
    frame.pack();
    frame.setLocationRelativeTo(null);
    frame.setVisible(true);
    frame.setSize(750, 600);
}

From source file:view.statistics.IssueChart.java

private void showChartBtn1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_showChartBtn1ActionPerformed
    String option = "" + optionCombo.getSelectedItem();
    String chartType = "" + chartCombo.getSelectedItem();
    if (option.equals("Blood Components")) {
        try {//w  w w.j  av  a 2 s.c o  m
            int cryoCount = 0;
            int ffpCount = 0;
            int freshBloodCount = 0;
            int plasmaCount = 0;
            int plateletsCount = 0;

            ResultSet rst = null;
            String year = "" + yearCombo.getSelectedItem();
            String month = "" + monthCombo.getSelectedItem();
            rst = IssueController.getIssueInfo(year, month);

            while (rst.next()) {

                String type = rst.getString("BloodType");
                if (type.equalsIgnoreCase("CRYO")) {
                    cryoCount++;
                } else if (type.equalsIgnoreCase("FFP")) {
                    ffpCount++;
                } else if (type.equalsIgnoreCase("Fresh Blood")) {
                    freshBloodCount++;
                } else if (type.equalsIgnoreCase("Plasma/CSP")) {
                    plasmaCount++;
                } else if (type.equalsIgnoreCase("Platelets")) {
                    plateletsCount++;
                }
            }

            if (chartType.equals("Pie Chart")) {
                DefaultPieDataset piedataset = new DefaultPieDataset();
                piedataset.setValue("CRYO", cryoCount);
                piedataset.setValue("FFP", ffpCount);
                piedataset.setValue("Fresh Blood", freshBloodCount);
                piedataset.setValue("Plasma/CSP", plasmaCount);
                piedataset.setValue("Platelets", plateletsCount);
                JFreeChart chart = ChartFactory.createPieChart3D("Issued Blood Components", piedataset, true,
                        true, true);
                ChartPanel panel = new ChartPanel(chart);
                chart.setBackgroundPaint(Color.PINK);
                chart.getTitle().setPaint(Color.RED);
                chartArea.add(panel);
                panel.setSize(chartArea.getSize());
                panel.setVisible(true);
            } else {
                DefaultCategoryDataset dataset = new DefaultCategoryDataset();
                dataset.setValue(cryoCount, "Issued Values", "CRYO");
                dataset.setValue(ffpCount, "Issued Values", "FFP");
                dataset.setValue(freshBloodCount, "Issued Values", "Fresh Blood");
                dataset.setValue(plasmaCount, "Issued Values", "Plasma/CSP");
                dataset.setValue(plateletsCount, "Issued Values", "Platelets");
                if (chartType.equals("Bar Chart")) {
                    JFreeChart chart = ChartFactory.createBarChart3D("Issued Bloood Components",
                            "Blood Component", "Issued Values", dataset, PlotOrientation.VERTICAL, false, true,
                            false);

                    chart.setBackgroundPaint(Color.PINK);
                    chart.getTitle().setPaint(Color.RED);

                    CategoryPlot p = chart.getCategoryPlot();
                    p.setRangeGridlinePaint(Color.BLUE);
                    ChartPanel panel = new ChartPanel(chart);
                    chartArea.add(panel);
                    panel.setSize(chartArea.getSize());
                    panel.setVisible(true);
                } else if (chartType.equals("Line Chart")) {
                    JFreeChart chart = ChartFactory.createLineChart3D("Issued Blood Components",
                            "Blood Component", "Issued Values", dataset, PlotOrientation.VERTICAL, false, true,
                            false);

                    chart.setBackgroundPaint(Color.PINK);
                    chart.getTitle().setPaint(Color.RED);

                    CategoryPlot p = chart.getCategoryPlot();
                    p.setRangeGridlinePaint(Color.BLUE);
                    ChartPanel panel = new ChartPanel(chart);
                    chartArea.add(panel);
                    panel.setSize(chartArea.getSize());
                    panel.setVisible(true);
                }
            }

        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, "-1Data Error!", "Warning!", JOptionPane.OK_OPTION);
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(IssueChart.class.getName()).log(Level.SEVERE, null, ex);
        }
    } else if (option.equals("Blood Groups")) {
        try {
            int Apos = 0;
            int Bpos = 0;
            int Aneg = 0;
            int Bneg = 0;
            int ABpos = 0;
            int Opos = 0;
            int ABneg = 0;
            int Oneg = 0;

            ResultSet rst = null;
            String year = "" + yearCombo.getSelectedItem();
            String month = "" + monthCombo.getSelectedItem();

            rst = IssueController.getIssueInfo(year, month);

            while (rst.next()) {

                String type = rst.getString("BloodGroup");
                if (type.equalsIgnoreCase("A+")) {
                    Apos++;
                } else if (type.equalsIgnoreCase("B+")) {
                    Bpos++;
                } else if (type.equalsIgnoreCase("A-")) {
                    Aneg++;
                } else if (type.equalsIgnoreCase("B-")) {
                    Bneg++;
                } else if (type.equalsIgnoreCase("AB+")) {
                    ABpos++;
                } else if (type.equalsIgnoreCase("AB-")) {
                    ABneg++;
                } else if (type.equalsIgnoreCase("O+")) {
                    Opos++;
                } else if (type.equalsIgnoreCase("O-")) {
                    Oneg++;
                }
            }

            if (chartType.equals("Pie Chart")) {
                DefaultPieDataset piedataset = new DefaultPieDataset();
                piedataset.setValue("A+", Apos);
                piedataset.setValue("A-", Aneg);
                piedataset.setValue("B+", Bpos);
                piedataset.setValue("B-", Bneg);
                piedataset.setValue("AB+", ABpos);
                piedataset.setValue("AB-", ABneg);
                piedataset.setValue("O+", Opos);
                piedataset.setValue("O-", Oneg);

                JFreeChart chart = ChartFactory.createPieChart3D("Issued Blood Groups", piedataset, true, true,
                        true);
                ChartPanel panel = new ChartPanel(chart);
                chart.setBackgroundPaint(Color.PINK);
                chart.getTitle().setPaint(Color.RED);
                chartArea.add(panel);
                panel.setSize(chartArea.getSize());
                panel.setVisible(true);
            } else {
                DefaultCategoryDataset dataset = new DefaultCategoryDataset();
                dataset.setValue(Apos, "Issued Values", "A+");
                dataset.setValue(Aneg, "Issued Values", "A-");
                dataset.setValue(Bpos, "Issued Values", "B+");
                dataset.setValue(Bneg, "Issued Values", "B-");
                dataset.setValue(ABpos, "Issued Values", "AB+");
                dataset.setValue(ABneg, "Issued Values", "AB-");
                dataset.setValue(Opos, "Issued Values", "O+");
                dataset.setValue(Oneg, "Issued Values", "O-");
                if (chartType.equals("Bar Chart")) {
                    JFreeChart chart = ChartFactory.createBarChart3D("Issued Bloood Groups", "Blood Group",
                            "Issued Values", dataset, PlotOrientation.VERTICAL, false, true, false);

                    chart.setBackgroundPaint(Color.PINK);
                    chart.getTitle().setPaint(Color.RED);

                    CategoryPlot p = chart.getCategoryPlot();
                    p.setRangeGridlinePaint(Color.BLUE);
                    ChartPanel panel = new ChartPanel(chart);
                    chartArea.add(panel);
                    panel.setSize(chartArea.getSize());
                    panel.setVisible(true);
                } else if (chartType.equals("Line Chart")) {
                    JFreeChart chart = ChartFactory.createLineChart3D("Issued Blood Groups", "Blood Group",
                            "Issued Values", dataset, PlotOrientation.VERTICAL, false, true, false);
                    chart.setBackgroundPaint(Color.PINK);
                    chart.getTitle().setPaint(Color.RED);

                    CategoryPlot p = chart.getCategoryPlot();
                    p.setRangeGridlinePaint(Color.BLUE);
                    ChartPanel panel = new ChartPanel(chart);
                    chartArea.add(panel);
                    panel.setSize(chartArea.getSize());
                    panel.setVisible(true);
                }

            }
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, "0Data Error!", "Warning!", JOptionPane.OK_OPTION);
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(IssueChart.class.getName()).log(Level.SEVERE, null, ex);
        }
    } else if (option.equals("Gender")) {
        try {
            int male = 0;
            int female = 0;

            ResultSet rst = null;
            String year = "" + yearCombo.getSelectedItem();
            String month = "" + monthCombo.getSelectedItem();
            rst = IssueController.getRequesteeInfo(year, month);

            while (rst.next()) {

                String type = rst.getString("Gender");
                if (type.equalsIgnoreCase("Male")) {
                    male++;
                } else if (type.equalsIgnoreCase("Female")) {
                    female++;
                }
            }

            if (chartType.equals("Pie Chart")) {
                DefaultPieDataset piedataset = new DefaultPieDataset();
                piedataset.setValue("Male", male);
                piedataset.setValue("Female", female);

                JFreeChart chart = ChartFactory.createPieChart3D("Blood Requestees", piedataset, true, true,
                        true);
                ChartPanel panel = new ChartPanel(chart);
                chart.setBackgroundPaint(Color.PINK);
                chart.getTitle().setPaint(Color.RED);
                chartArea.add(panel);
                panel.setSize(chartArea.getSize());
                panel.setVisible(true);
            } else {
                DefaultCategoryDataset dataset = new DefaultCategoryDataset();
                dataset.setValue(male, "", "Male");
                dataset.setValue(female, "", "Female");

                if (chartType.equals("Bar Chart")) {
                    JFreeChart chart = ChartFactory.createBarChart3D("Blood Requestees", "Gender", "", dataset,
                            PlotOrientation.VERTICAL, false, true, false);

                    chart.setBackgroundPaint(Color.PINK);
                    chart.getTitle().setPaint(Color.RED);

                    CategoryPlot p = chart.getCategoryPlot();
                    p.setRangeGridlinePaint(Color.BLUE);
                    ChartPanel panel = new ChartPanel(chart);
                    chartArea.add(panel);
                    panel.setSize(chartArea.getSize());
                    panel.setVisible(true);
                } else if (chartType.equals("Line Chart")) {
                    JFreeChart chart = ChartFactory.createLineChart3D("Blood Requestees", "Gender", "", dataset,
                            PlotOrientation.VERTICAL, false, true, false);
                    chart.setBackgroundPaint(Color.PINK);
                    chart.getTitle().setPaint(Color.RED);

                    CategoryPlot p = chart.getCategoryPlot();
                    p.setRangeGridlinePaint(Color.BLUE);
                    ChartPanel panel = new ChartPanel(chart);
                    chartArea.add(panel);
                    panel.setSize(chartArea.getSize());
                    panel.setVisible(true);
                }
            }
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, "1Data Error!", "Warning!", JOptionPane.OK_OPTION);
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(IssueChart.class.getName()).log(Level.SEVERE, null, ex);
        }
    } else if (option.equals("Hospitals")) {
        try {

            String[] hospitals = new String[10];
            int[] hospitalCount = new int[10];
            int noOfHospitals = 0;
            ResultSet rst = null;
            String year = "" + yearCombo.getSelectedItem();
            String month = "" + monthCombo.getSelectedItem();
            rst = SampleDetailsController.getAllHospitals();
            while (rst.next()) {
                hospitals[noOfHospitals] = rst.getString("Name");
                hospitalCount[noOfHospitals] = 0;
                noOfHospitals++;
            }

            rst = IssueController.getRequesteeInfo(year, month);

            while (rst.next()) {
                String type = rst.getString("Hospital");
                for (int i = 0; i < noOfHospitals; i++) {
                    if (type.equalsIgnoreCase(hospitals[i])) {
                        hospitalCount[i]++;
                    }
                }
            }

            if (chartType.equals("Pie Chart")) {
                DefaultPieDataset piedataset = new DefaultPieDataset();
                for (int i = 0; i < noOfHospitals; i++) {
                    piedataset.setValue(hospitals[i], hospitalCount[i]);
                }

                JFreeChart chart = ChartFactory.createPieChart3D("Issued Hospitals", piedataset, true, true,
                        true);
                ChartPanel panel = new ChartPanel(chart);
                chart.setBackgroundPaint(Color.PINK);
                chart.getTitle().setPaint(Color.RED);
                chartArea.add(panel);
                panel.setSize(chartArea.getSize());
                panel.setVisible(true);
            } else {
                DefaultCategoryDataset dataset = new DefaultCategoryDataset();
                for (int i = 0; i < noOfHospitals; i++) {
                    dataset.setValue(hospitalCount[i], "Issued Values", hospitals[i]);
                }

                if (chartType.equals("Bar Chart")) {
                    JFreeChart chart = ChartFactory.createBarChart3D("Issued Hospitals", "Hospital",
                            "Issued Values", dataset, PlotOrientation.VERTICAL, false, true, false);

                    chart.setBackgroundPaint(Color.PINK);
                    chart.getTitle().setPaint(Color.RED);

                    CategoryPlot p = chart.getCategoryPlot();
                    p.setRangeGridlinePaint(Color.BLUE);
                    ChartPanel panel = new ChartPanel(chart);
                    chartArea.add(panel);
                    panel.setSize(chartArea.getSize());
                    panel.setVisible(true);
                } else if (chartType.equals("Line Chart")) {
                    JFreeChart chart = ChartFactory.createLineChart3D("Issued Hospitals", "Hospital",
                            "Issued Values", dataset, PlotOrientation.VERTICAL, false, true, false);
                    chart.setBackgroundPaint(Color.PINK);
                    chart.getTitle().setPaint(Color.RED);

                    CategoryPlot p = chart.getCategoryPlot();
                    p.setRangeGridlinePaint(Color.BLUE);
                    ChartPanel panel = new ChartPanel(chart);
                    chartArea.add(panel);
                    panel.setSize(chartArea.getSize());
                    panel.setVisible(true);
                }
            }
        } catch (SQLException ex) {
            ex.printStackTrace();
            JOptionPane.showMessageDialog(null, "2Data Error!", "Warning!", JOptionPane.OK_OPTION);
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(IssueChart.class.getName()).log(Level.SEVERE, null, ex);
        }
    } else if (option.equals("Age Groups")) {
        try {
            int[] ages = new int[10];
            for (int i = 0; i < 10; i++) {
                ages[i] = 0;
            }
            ResultSet rst = null;
            String year = "" + yearCombo.getSelectedItem();
            String month = "" + monthCombo.getSelectedItem();
            rst = IssueController.getRequesteeInfo(year, month);

            while (rst.next()) {
                int age = Integer.parseInt(rst.getString("Age"));
                if (age <= 10 && age > 0) {
                    ages[0]++;
                } else if (age <= 20 && age > 10) {
                    ages[1]++;
                } else if (age <= 30 && age > 20) {
                    ages[2]++;
                } else if (age <= 40 && age > 30) {
                    ages[3]++;
                } else if (age <= 50 && age > 40) {
                    ages[4]++;
                } else if (age <= 60 && age > 50) {
                    ages[5]++;
                } else if (age <= 70 && age > 60) {
                    ages[6]++;
                } else if (age <= 80 && age > 70) {
                    ages[7]++;
                } else if (age <= 90 && age > 80) {
                    ages[8]++;
                } else if (age <= 100 && age > 90) {
                    ages[9]++;
                }
            }

            rst = IssueController.getRequesteeInfo(year, month);

            if (chartType.equals("Pie Chart")) {
                DefaultPieDataset piedataset = new DefaultPieDataset();
                for (int i = 0; i < 10; i++) {
                    piedataset.setValue(i * 10 + "-" + (i * 10 + 10), ages[i]);
                }

                JFreeChart chart = ChartFactory.createPieChart3D("Issued Age Groups", piedataset, true, true,
                        true);
                ChartPanel panel = new ChartPanel(chart);
                chart.setBackgroundPaint(Color.PINK);
                chart.getTitle().setPaint(Color.RED);
                chartArea.add(panel);
                panel.setSize(chartArea.getSize());
                panel.setVisible(true);
            } else {
                DefaultCategoryDataset dataset = new DefaultCategoryDataset();
                for (int i = 0; i < 10; i++) {
                    dataset.setValue(ages[i], "Issued Values", i * 10 + "-" + (i * 10 + 10));
                }

                if (chartType.equals("Bar Chart")) {
                    JFreeChart chart = ChartFactory.createBarChart3D("Issued Age Groups", "Age Groups",
                            "Issued Values", dataset, PlotOrientation.VERTICAL, false, true, false);

                    chart.setBackgroundPaint(Color.PINK);
                    chart.getTitle().setPaint(Color.RED);

                    CategoryPlot p = chart.getCategoryPlot();
                    p.setRangeGridlinePaint(Color.BLUE);
                    ChartPanel panel = new ChartPanel(chart);
                    chartArea.add(panel);
                    panel.setSize(chartArea.getSize());
                    panel.setVisible(true);
                } else if (chartType.equals("Line Chart")) {
                    JFreeChart chart = ChartFactory.createLineChart3D("Issued Age Groups", "Age Groups",
                            "Issued Values", dataset, PlotOrientation.VERTICAL, false, true, false);
                    chart.setBackgroundPaint(Color.PINK);
                    chart.getTitle().setPaint(Color.RED);

                    CategoryPlot p = chart.getCategoryPlot();
                    p.setRangeGridlinePaint(Color.BLUE);
                    ChartPanel panel = new ChartPanel(chart);
                    chartArea.add(panel);
                    panel.setSize(chartArea.getSize());
                    panel.setVisible(true);
                }
            }
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, "3Data Error!", "Warning!", JOptionPane.OK_OPTION);
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(IssueChart.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
}

From source file:org.bhavaya.ui.view.ChartView.java

private JFreeChart createVerticalBarChart() {
    JFreeChart chart;/*from ww  w.  j a v  a2  s. com*/
    if (isPlot3D()) {
        chart = ChartFactory.createBarChart3D(getName(), getDomainName(), getRangeName(), tableModelDataSet,
                PlotOrientation.VERTICAL, true, true, false);
    } else {
        chart = ChartFactory.createBarChart(getName(), getDomainName(), getRangeName(), tableModelDataSet,
                PlotOrientation.VERTICAL, true, true, false);
    }

    NumberAxis rangeAxis = (NumberAxis) chart.getCategoryPlot().getRangeAxis();
    rangeAxis.setAutoTickUnitSelection(true);

    CategoryAxis domainAxis = (CategoryAxis) chart.getCategoryPlot().getDomainAxis();
    domainAxis.setTickMarksVisible(true);
    return chart;
}

From source file:org.bhavaya.ui.view.ChartView.java

private JFreeChart createHorizontalBarChart() {
    JFreeChart chart;//from  w ww  .  j  a  va 2 s. co  m
    if (isPlot3D()) {
        chart = ChartFactory.createBarChart3D(getName(), getDomainName(), getRangeName(), tableModelDataSet,
                PlotOrientation.HORIZONTAL, true, true, false);
    } else {
        chart = ChartFactory.createBarChart(getName(), getDomainName(), getRangeName(), tableModelDataSet,
                PlotOrientation.HORIZONTAL, true, true, false);
    }
    NumberAxis rangeAxis = (NumberAxis) chart.getCategoryPlot().getRangeAxis();
    rangeAxis.setAutoTickUnitSelection(true);
    rangeAxis.setVerticalTickLabels(true);
    rangeAxis.setTickMarksVisible(true);

    CategoryAxis domainAxis = (CategoryAxis) chart.getCategoryPlot().getDomainAxis();
    return chart;
}

From source file:de.forsthaus.webui.customer.CustomerChartCtrl.java

/**
 * onClick button Bar Chart 3D. <br>
 * /*from  ww  w  .  j  a  va 2s .co  m*/
 * @param event
 * @throws IOException
 */
public void onClick$button_CustomerChart_BarChart3D(Event event) throws InterruptedException, IOException {
    // logger.debug(event.toString());

    div_chartArea.getChildren().clear();

    // get the customer ID for which we want show a chart
    long kunId = getCustomer().getId();

    // get a list of data
    List<ChartData> kunAmountList = getChartService().getChartDataForCustomer(kunId);

    if (kunAmountList.size() > 0) {

        DefaultCategoryDataset dataset = new DefaultCategoryDataset();

        for (ChartData chartData : kunAmountList) {

            Calendar calendar = new GregorianCalendar();
            calendar.setTime(chartData.getChartKunInvoiceDate());

            int month = calendar.get(Calendar.MONTH) + 1;
            int year = calendar.get(Calendar.YEAR);
            String key = String.valueOf(month) + "/" + String.valueOf(year);

            BigDecimal bd = chartData.getChartKunInvoiceAmount().setScale(15, 3);
            String amount = String.valueOf(bd.doubleValue());

            // fill the data
            dataset.setValue(new Double(chartData.getChartKunInvoiceAmount().doubleValue()), key + " " + amount,
                    key + " " + amount);
        }

        String title = "Monthly amount for year 2009";
        PlotOrientation po = PlotOrientation.VERTICAL;
        JFreeChart chart = ChartFactory.createBarChart3D(title, "Month", "Amount", dataset, po, true, true,
                true);

        CategoryPlot plot = (CategoryPlot) chart.getPlot();
        plot.setForegroundAlpha(0.5f);
        BufferedImage bi = chart.createBufferedImage(chartWidth, chartHeight, BufferedImage.TRANSLUCENT, null);
        byte[] bytes = EncoderUtil.encode(bi, ImageFormat.PNG, true);

        AImage chartImage = new AImage("Bar Chart 3D", bytes);

        Image img = new Image();
        img.setContent(chartImage);
        img.setParent(div_chartArea);

    } else {

        div_chartArea.getChildren().clear();

        Label label = new Label();
        label.setValue("This customer have no data for showing in a chart!");

        label.setParent(div_chartArea);
    }
}