Example usage for org.jfree.chart ChartFactory createPieChart3D

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

Introduction

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

Prototype

public static JFreeChart createPieChart3D(String title, PieDataset dataset, boolean legend, boolean tooltips,
        boolean urls) 

Source Link

Document

Creates a 3D pie chart using the specified dataset.

Usage

From source file:org.pentaho.reporting.engine.classic.demo.ancient.demo.chartdemo.MultiAPIChartDemo.java

/**
 * Creates a sample chart.//from   w ww  .ja  v a 2 s .com
 *
 * @return A chart.
 */
private JFreeChart createChart(final int year) {

    final JFreeChart chart = ChartFactory.createPieChart3D("Programming Language of the Year " + year, // chart title
            createSampleDataset(), // data
            true, // include legend
            true, false);

    // set the background color for the chart...
    final PiePlot3D plot = (PiePlot3D) chart.getPlot();
    plot.setStartAngle(270);
    //    plot.setDirection(Rotation.CLOCKWISE);
    plot.setForegroundAlpha(0.5f);
    plot.setNoDataMessage("No data to display");

    return chart;

}

From source file:reports.util.PieChart3DScriptlet.java

/**
 *
 *///from  www .  j  a va 2s .  co  m
public void afterReportInit() throws JRScriptletException {

    JFreeChart chart = ChartFactory.createPieChart3D("Pie Chart 3D Demo 1", dataset, true, true, false);

    PiePlot3D plot = (PiePlot3D) chart.getPlot();
    plot.setStartAngle(290);
    plot.setDirection(Rotation.CLOCKWISE);
    plot.setForegroundAlpha(0.5f);
    plot.setNoDataMessage("No data to display");

    /*   */
    this.setVariableValue("Chart", new JCommonDrawableRenderer(chart));
}

From source file:teambootje.A6.java

/**
 * Creates new form A6/*from  w  ww  .  ja v a  2s  . co  m*/
 */
public A6() {
    initComponents();
    setLocationRelativeTo(null);
    setLayout(new BorderLayout());

    //Create and set up the window.
    setTitle("SS Rotterdam Analyse || Analyse 6");
    ImageIcon icon = new ImageIcon("img/bootje.jpg");
    setIconImage(icon.getImage());

    // back BTN
    JButton back = new JButton("Back");
    add(back, BorderLayout.NORTH);

    back.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            dispose();
            //   throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
        }
    });

    // panel en Label
    JPanel ana = new JPanel();
    add(ana, BorderLayout.CENTER);

    //tabel
    String sql = "SELECT Locatie.land, locatie.stad, count(persoon.LID) as Aantal FROM persoon, Locatie WHERE persoon.LID = locatie.LID GROUP BY stad";
    List<Object[]> list = new ArrayList<Object[]>();
    ResultSet rs = null;
    try {
        rs = db.runSql(sql);
        while (rs.next()) {
            String city = rs.getString("locatie.stad");
            int amount = rs.getInt("Aantal");
            String[] row = new String[rs.getMetaData().getColumnCount()];
            for (int i = 1; i <= rs.getMetaData().getColumnCount(); i++) {
                row[i - 1] = rs.getString(i);
            }
            list.add(row);

            //chart
            JButton chart = new JButton("Chart");
            add(chart, BorderLayout.SOUTH);

            chart.addActionListener(new ActionListener() {
                String c1 = city;
                int a1 = amount;

                @Override
                public void actionPerformed(ActionEvent e) {
                    DefaultPieDataset pieDataset = new DefaultPieDataset();
                    pieDataset.setValue(c1, a1);
                    pieDataset.setValue("Rotterdam", new Integer(1));
                    pieDataset.setValue("Bergen op zoom", new Integer(1));

                    JFreeChart chart = ChartFactory.createPieChart3D("Waar komen bezoekers vandaan", pieDataset,
                            true, true, true);
                    PiePlot3D p = (PiePlot3D) chart.getPlot();
                    //p.setForegroundAlpha(TOP_ALIGNMENT);
                    ChartFrame pie = new ChartFrame("Waar komen bezoekers vandaan", chart);
                    pie.setVisible(true);
                    pie.setSize(500, 500);
                    pie.setLocationRelativeTo(null);

                    //  throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                }
            });
        }
    } catch (SQLException e) {
        JOptionPane.showMessageDialog(null, e);
    }

    Object[][] array = new Object[list.size()][];
    Object columnNames[] = { "Land", "stad", "Aantal" };
    list.toArray(array);

    JTable table = new JTable(array, columnNames);
    JScrollPane scroll = new JScrollPane(table);
    scroll.setPreferredSize(new Dimension(400, 400));
    ana.add(scroll);
}

From source file:teambootje.A3.java

/**
 * Creates new form A3/* w w  w .j a va2  s  .  c  om*/
 */
public A3() {
    initComponents();
    setLocationRelativeTo(null);
    setLayout(new BorderLayout());

    //Create and set up the window.
    setTitle("SS Rotterdam Analyse || Analyse 3");
    ImageIcon icon = new ImageIcon("img/bootje.jpg");
    setIconImage(icon.getImage());

    // back BTN
    JButton back = new JButton("Back");
    add(back, BorderLayout.NORTH);

    back.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            dispose();
            // throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
        }
    });

    // panel en Label
    JPanel ana = new JPanel();
    add(ana, BorderLayout.CENTER);

    //tabel
    String sql = "SELECT locatie.land, locatie.stad, COUNT(posts.PID) AS Aantal FROM persoon, locatie, posts WHERE persoon.LID = locatie.LID AND persoon.AID = posts.AID GROUP BY locatie.land ORDER BY count(posts.PID)";
    List<Object[]> list = new ArrayList<Object[]>();
    ResultSet rs = null;
    try {
        rs = db.runSql(sql);
        while (rs.next()) {
            String land = rs.getString("locatie.land");
            String stad = rs.getString("locatie.stad");
            int aantal = rs.getInt("Aantal");
            String[] row = new String[rs.getMetaData().getColumnCount()];
            for (int i = 1; i <= rs.getMetaData().getColumnCount(); i++) {
                row[i - 1] = rs.getString(i);
            }
            list.add(row);

            //chart
            JButton chart = new JButton("Chart");
            add(chart, BorderLayout.SOUTH);

            chart.addActionListener(new ActionListener() {
                String l1 = land;
                String s1 = stad;
                int a1 = aantal;

                @Override
                public void actionPerformed(ActionEvent e) {
                    DefaultPieDataset pieDataset = new DefaultPieDataset();
                    pieDataset.setValue(s1, a1);

                    JFreeChart chart = ChartFactory.createPieChart3D("Aantal Posts per locatie", pieDataset,
                            true, true, true);
                    PiePlot3D p = (PiePlot3D) chart.getPlot();
                    //p.setForegroundAlpha(TOP_ALIGNMENT);
                    ChartFrame pie = new ChartFrame("Aantal Posts per locatie", chart);
                    pie.setVisible(true);
                    pie.setSize(500, 500);
                    pie.setLocationRelativeTo(null);

                    //  throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                }
            });
        }
    } catch (SQLException e) {
        JOptionPane.showMessageDialog(null, e);
    }

    Object[][] array = new Object[list.size()][];
    Object columnNames[] = { "Land", "Stad", "Aantal" };
    list.toArray(array);

    JTable table = new JTable(array, columnNames);
    JScrollPane scroll = new JScrollPane(table);
    scroll.setPreferredSize(new Dimension(400, 400));
    ana.add(scroll);

}

From source file:com.kodemore.freechart.KmSimplePieChart.java

@Override
protected JFreeChart createAbstractChart() {
    DefaultPieDataset ds = new DefaultPieDataset();

    int n = _names.size();
    for (int i = 0; i < n; i++)
        ds.setValue(_names.get(i), _values.get(i));

    boolean tooltips = false;
    boolean urls = false;

    return ChartFactory.createPieChart3D("", ds, getLegend(), tooltips, urls);
}

From source file:net.nosleep.superanalyzer.analysis.views.EncodingKindView.java

private void createChart() {

    _chart = ChartFactory.createPieChart3D(Misc.getString("KINDS_OF_MUSIC_FILES"), _dataset, false, true,
            false);/*from   www . j a v a  2 s .c o  m*/

    PiePlot3D plot = (PiePlot3D) _chart.getPlot();
    plot.setDarkerSides(true);
    plot.setStartAngle(PieRotator.angle);
    plot.setDirection(Rotation.CLOCKWISE);
    plot.setForegroundAlpha(0.5f);
    plot.setNoDataMessage("No data to display");
    plot.setInsets(new RectangleInsets(10, 10, 10, 10));
    plot.setOutlineVisible(false);
    plot.setLabelGenerator(new StandardPieSectionLabelGenerator("{0} ({2})"));

    _chart.addSubtitle(HomePanel.createSubtitle(Misc.getString("KINDS_OF_MUSIC_FILES_SUBTITLE")));

    ChartUtilities.applyCurrentTheme(_chart);
    plot.setBackgroundPaint(Color.white);
    _chart.setBorderVisible(false);

    plot.setIgnoreZeroValues(true);

    // plot.setAutoPopulateSectionPaint(false);

    // Misc.formatChart(plot);
}

From source file:teambootje.A7.java

/**
 * Creates new form A7//from   w  w  w  .  jav a 2s  .c  o m
 */
public A7() {
    initComponents();
    setLocationRelativeTo(null);
    setLayout(new BorderLayout());

    //Create and set up the window.
    setTitle("SS Rotterdam Analyse || Analyse 7");
    ImageIcon icon = new ImageIcon("img/bootje.jpg");
    setIconImage(icon.getImage());

    // back BTN
    JButton back = new JButton("Back");
    add(back, BorderLayout.NORTH);

    back.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            dispose();
            //    throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
        }
    });

    // panel en Label
    JPanel ana = new JPanel();
    add(ana, BorderLayout.CENTER);

    //tabel
    String sql = "SELECT doelgroep.doelgroep, COUNT(*) AS Aantal FROM doelgroep GROUP BY doelgroep.doelgroep";
    List<Object[]> list = new ArrayList<Object[]>();
    ResultSet rs = null;
    try {
        rs = db.runSql(sql);
        while (rs.next()) {
            String ta = rs.getString("doelgroep.Doelgroep");
            int amount = rs.getInt("Aantal");
            String[] row = new String[rs.getMetaData().getColumnCount()];
            for (int i = 1; i <= rs.getMetaData().getColumnCount(); i++) {
                row[i - 1] = rs.getString(i);
            }
            list.add(row);

            //chart
            JButton chart = new JButton("Chart");
            add(chart, BorderLayout.SOUTH);

            chart.addActionListener(new ActionListener() {
                String dd = ta;
                int a1 = amount;

                @Override
                public void actionPerformed(ActionEvent e) {

                    DefaultPieDataset pieDataset = new DefaultPieDataset();
                    pieDataset.setValue(dd, a1);
                    pieDataset.setValue("Bedrijfsleven", new Integer(1));
                    pieDataset.setValue("50+", new Integer(1));
                    pieDataset.setValue("40+", new Integer(1));
                    pieDataset.setValue("30+", new Integer(1));
                    JFreeChart chart = ChartFactory.createPieChart3D("Aantal mensen per Doelgroep", pieDataset,
                            true, true, true);
                    PiePlot3D p = (PiePlot3D) chart.getPlot();
                    //p.setForegroundAlpha(TOP_ALIGNMENT);
                    ChartFrame pie = new ChartFrame("Aantal mensen per Doelgroep", chart);
                    pie.setVisible(true);
                    pie.setSize(500, 500);
                    pie.setLocationRelativeTo(null);

                    //    throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                }
            });
        }
    } catch (SQLException e) {
        JOptionPane.showMessageDialog(null, e);
    }

    Object[][] array = new Object[list.size()][];
    Object columnNames[] = { "Doelgroep", "Aantal" };
    list.toArray(array);

    JTable table = new JTable(array, columnNames);
    JScrollPane scroll = new JScrollPane(table);
    scroll.setPreferredSize(new Dimension(400, 400));
    ana.add(scroll);

}

From source file:br.com.OCTur.view.GraficoController.java

@Override
public void initialize(URL url, ResourceBundle rb) {
    fornecedor = new FornecedorDAO().pegarPorEmpresa(Sessao.pessoa.getEmpresa());
    snCategoriasMaisVendida = new SwingNode();
    snInteressePorArtesanato = new SwingNode();
    snProdutosMaisAntigos = new SwingNode();
    spCategoriaMaisVendida.setContent(snCategoriasMaisVendida);
    spInteressePorArtesanato.setContent(snInteressePorArtesanato);
    spProdutosMaisAntigos.setContent(snProdutosMaisAntigos);
    DefaultPieDataset dpdDados = new DefaultPieDataset();
    for (CategoriaProduto categoriaProduto : new CategoriaProdutoDAO().pegarTodos()) {
        List<CompraItem> compraitem = new CompraItemDAO().pegarPorFonecedorCategoria(fornecedor,
                categoriaProduto);/* www  . ja  v a  2s.  com*/
        dpdDados.setValue(categoriaProduto.toString(), compraitem.size());
    }
    JFreeChart jFreeChart = ChartFactory.createPieChart3D(
            ControlTranducao.traduzirPalavra("CATEGORIASMAISVENDIDAS"), dpdDados, false, false, Locale.ROOT);
    PiePlot3D piePlot3D = (PiePlot3D) jFreeChart.getPlot();
    piePlot3D.setLabelGenerator(new StandardPieSectionLabelGenerator("{0}\n{2}"));
    ChartPanel categoriaMaisVendida = new ChartPanel(jFreeChart);
    Platform.runLater(() -> {
        snCategoriasMaisVendida.setContent(categoriaMaisVendida);
    });
    DefaultCategoryDataset dcdDados = new DefaultCategoryDataset();
    for (int i = Calendar.getInstance().get(Calendar.YEAR) - 10; i < Calendar.getInstance()
            .get(Calendar.YEAR); i++) {
        dcdDados.addValue(new Random().nextDouble() * 100000, "Interesse", String.valueOf(i));
    }
    jFreeChart = ChartFactory.createLineChart(
            ControlTranducao.traduzirPalavra("interesse") + " "
                    + ControlTranducao.traduzirPalavra("artesanato"),
            "", "", dcdDados, PlotOrientation.VERTICAL, false, false, false);
    ChartPanel interesseArtesanato = new ChartPanel(jFreeChart);
    Platform.runLater(() -> {
        snInteressePorArtesanato.setContent(interesseArtesanato);
    });
    produto = new ArrayList<>();
    for (Produto produto : new ProdutoDAO().pegarPorFornecedor(fornecedor)) {
        if (new CompraItemDAO().pegarPorProduto(produto).isEmpty()) {
            List<Item> itens = new ItemDAO().pegarPorProduto(produto);
            if (!itens.isEmpty()) {
                Item item = itens.get(0);
                long quantidade = (new Date().getTime() - item.getDatacadastro().getTime()) / 1000 / 60 / 60
                        / 24;
                this.produto.add(new EntidadeGrafico<>(produto, quantidade));
            }
        }
    }
    slMeta.setMax(produto.stream().mapToDouble(EntidadeGrafico::getValue).max().orElse(0));
    slMeta.valueProperty()
            .addListener((ObservableValue<? extends Number> observable, Number oldValue, Number newValue) -> {
                produtosMaisAntigos();
            });
    Platform.runLater(() -> {
        produtosMaisAntigos();
    });
}

From source file:edu.ucla.stat.SOCR.chart.demo.PieChart3DDemo1.java

/**
 * Creates a sample chart./*from  w  ww  . j av a 2s .c  om*/
 * 
 * @param dataset  the dataset.
 * 
 * @return A chart.
 */
protected JFreeChart createChart(PieDataset dataset) {

    JFreeChart chart = ChartFactory.createPieChart3D(chartTitle, // chart title
            dataset, // data
            !legendPanelOn, // include legend
            true, false);

    PiePlot3D plot = (PiePlot3D) chart.getPlot();
    plot.setStartAngle(290);
    plot.setDirection(Rotation.CLOCKWISE);
    plot.setForegroundAlpha(0.5f);

    /*   for (int i=0; i<pulloutFlag.length; i++){
          //System.out.println("\""+pulloutFlag[i]+"\"");
          if (pulloutFlag[i].equals("1")){
      Comparable key = dataset.getKey(i);
      plot.setExplodePercent(key, 0.30);
          }
       }*/

    plot.setNoDataMessage("No data to display");

    if (rotateOn) {
        Rotator rotator = new Rotator(plot);
        rotator.start();
    }

    setCategorySummary(dataset);
    return chart;

}

From source file:teambootje.A8.java

/**
 * Creates new form A8/*from w  w w .j  a v a2 s .  co  m*/
 */
public A8() {
    initComponents();
    setLocationRelativeTo(null);
    setLayout(new BorderLayout());

    //Create and set up the window.
    setTitle("SS Rotterdam Analyse || Analyse 8");
    ImageIcon icon = new ImageIcon("img/bootje.jpg");
    setIconImage(icon.getImage());

    // back BTN
    JButton back = new JButton("Back");
    add(back, BorderLayout.NORTH);

    back.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            dispose();
            //throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
        }
    });

    // panel en Label
    JPanel ana = new JPanel();
    add(ana, BorderLayout.CENTER);

    //tabel
    String sql = "SELECT doelgroep.Doelgroep, COUNT(posts.post) AS Aantal FROM doelgroep, posts WHERE posts.DID = doelgroep.DID GROUP BY doelgroep.Doelgroep";
    List<Object[]> list = new ArrayList<Object[]>();
    ResultSet rs = null;
    try {
        rs = db.runSql(sql);
        while (rs.next()) {
            String ta = rs.getString("doelgroep.Doelgroep");
            int amount = rs.getInt("Aantal");
            String[] row = new String[rs.getMetaData().getColumnCount()];
            for (int i = 1; i <= rs.getMetaData().getColumnCount(); i++) {
                row[i - 1] = rs.getString(i);
            }
            list.add(row);

            //chart
            JButton chart = new JButton("Chart");
            add(chart, BorderLayout.SOUTH);

            chart.addActionListener(new ActionListener() {
                String dd = ta;
                int a1 = amount;

                @Override
                public void actionPerformed(ActionEvent e) {

                    DefaultPieDataset pieDataset = new DefaultPieDataset();
                    pieDataset.setValue(dd, a1);
                    pieDataset.setValue("50+", new Integer(0));
                    pieDataset.setValue("Tiener", new Integer(0));
                    pieDataset.setValue("40+", new Integer(0));
                    pieDataset.setValue("30+", new Integer(0));
                    JFreeChart chart = ChartFactory.createPieChart3D("Aantal Posts per doelgroep", pieDataset,
                            true, true, true);
                    PiePlot3D p = (PiePlot3D) chart.getPlot();
                    //p.setForegroundAlpha(TOP_ALIGNMENT);
                    ChartFrame pie = new ChartFrame("Aantal Posts per doelgroep", chart);
                    pie.setVisible(true);
                    pie.setSize(500, 500);
                    pie.setLocationRelativeTo(null);

                    //throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
                }
            });
        }
    } catch (SQLException e) {
        JOptionPane.showMessageDialog(null, e);
    }

    Object[][] array = new Object[list.size()][];
    Object columnNames[] = { "Doelgoep", "Aantal" };
    list.toArray(array);

    JTable table = new JTable(array, columnNames);
    JScrollPane scroll = new JScrollPane(table);
    scroll.setPreferredSize(new Dimension(400, 400));
    ana.add(scroll);

}