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:com.itemanalysis.jmetrik.graph.piechart.PieChartPanel.java

public void setGraph() {
    if (hasGroupVariable) {
        DefaultCategoryDataset piedat = new DefaultCategoryDataset();
        chart = ChartFactory.createMultiplePieChart(chartTitle, piedat, TableOrder.BY_ROW, showLegend, true,
                false);//from   w  ww. jav  a2s.c o m

        if (chartSubtitle != null && !"".equals(chartSubtitle)) {
            TextTitle subtitle1 = new TextTitle(chartSubtitle);
            chart.addSubtitle(subtitle1);
        }

        MultiplePiePlot plot = (MultiplePiePlot) chart.getPlot();
        JFreeChart subchart = plot.getPieChart();
        PiePlot p = (PiePlot) subchart.getPlot();
        p.setBackgroundPaint(Color.WHITE);
        p.setLabelGenerator(new StandardPieSectionLabelGenerator("{0} ({2})"));
        if (explode)
            p.setExplodePercent(explodeValue, explodePercent);

        ChartPanel panel = new ChartPanel(chart);
        panel.setPreferredSize(new Dimension(width, height));

        chart.setPadding(new RectangleInsets(20.0, 5.0, 20.0, 5.0));
        this.add(panel);
    } else {
        DefaultPieDataset piedat = new DefaultPieDataset();
        if (command.getSelectOneOption("view").isValueSelected("3D")) {
            chart = ChartFactory.createPieChart3D(chartTitle, piedat, showLegend, true, false);

            PiePlot3D plot = (PiePlot3D) chart.getPlot();
            plot.setStartAngle(290);
            plot.setDirection(Rotation.CLOCKWISE);
            plot.setForegroundAlpha(0.5f);
            plot.setNoDataMessage("No data to display");
            if (explode)
                plot.setExplodePercent(explodeValue, explodePercent);

        } else {
            chart = ChartFactory.createPieChart(command.getFreeOption("title").getString(), piedat, showLegend,
                    true, false);
        }

        if (chartSubtitle != null && !"".equals(chartSubtitle)) {
            TextTitle subtitle = new TextTitle(chartSubtitle);
            chart.addSubtitle(subtitle);
        }

        PiePlot plot = (PiePlot) chart.getPlot();
        plot.setLabelGap(0.02);
        plot.setLabelGenerator(new StandardPieSectionLabelGenerator("{0} ({2})"));
        plot.setBackgroundPaint(Color.WHITE);
        if (explode)
            plot.setExplodePercent(explodeValue, explodePercent);

        ChartPanel panel = new ChartPanel(chart);
        panel.getPopupMenu().addSeparator();
        this.addJpgMenuItem(this, panel.getPopupMenu());
        panel.setPreferredSize(new Dimension(width, height));

        chart.setPadding(new RectangleInsets(5.0, 5.0, 5.0, 5.0));
        this.setBackground(Color.WHITE);
        this.add(panel);
    }

}

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

private void graficoPorEstado() {
    ArrayList<GraficoEntidad> graficos;
    graficos = gDao.obtenerPrestamosPorEstado();
    DefaultPieDataset data = new DefaultPieDataset();

    if (graficos.size() > 0) {

        for (GraficoEntidad result : graficos) {
            //datos.setValue(result.getValor(), result.getSerie(), result.getValorEje());
            data.setValue(result.getValorEje(), result.getValor());
        }//from   w w w . ja v  a2  s. c  o m

        //dibujarGrafico(datos, BAR, "Otorgado vs Recuperado", "Moneda", "Monto",PlotOrientation.VERTICAL,pnelOtorgadoRecuperado);

        // Creando el Grafico
        /*JFreeChart grafica = ChartFactory.createPieChart(
         "Prstamos por Estado", 
         data, 
         true, 
         true, 
         false);*/

        JFreeChart grafica = ChartFactory.createPieChart3D("Prstamos por Estado", data, true, true, false);
        grafica.setBackgroundPaint(Color.white);
        PiePlot3D plot = (PiePlot3D) grafica.getPlot();
        plot.setForegroundAlpha(0.6f);
        plot.setCircular(true);
        plot.setLabelGap(0.01);
        plot.setLabelGenerator(new StandardPieSectionLabelGenerator("{0} {1} ({2})"));
        plot.setBackgroundPaint(null);

        // Mostrar Grafico
        ChartPanel panel = new ChartPanel(grafica);
        pnelPorEstado.add(panel);
        pnelPorEstado.revalidate();
        pnelPorEstado.repaint();

    }

}

From source file:my.honeypotadmin.AppMain.java

public void UserPieSetup(double User, double total) {

    DefaultPieDataset pieDataset = new DefaultPieDataset();
    pieDataset.setValue("User's Usage", User);
    pieDataset.setValue("Remaining Division Usage", total - User);

    JFreeChart chart = ChartFactory.createPieChart3D("User Usage", pieDataset, true, true, true);

    PiePlot P = (PiePlot3D) chart.getPlot();

    ChartPanel panel = new ChartPanel(chart);

    UserPiePanel.removeAll();//  w  w w.  ja v a2s.  c o m
    UserPiePanel.setLayout(new FlowLayout(FlowLayout.LEFT));
    UserPiePanel.add(panel);
    UserPiePanel.updateUI();

}

From source file:org.jajuk.ui.views.StatView.java

/**
 * Genre repartition pie./*  www  . java 2 s .  c om*/
 * 
 * @return the chart
 */
private ChartPanel createGenreRepartition() {
    try {
        DefaultPieDataset pdata = null;
        JFreeChart jfchart = null;
        // data
        pdata = new DefaultPieDataset();
        int iTotal = TrackManager.getInstance().getElementCount();
        double dOthers = 0;
        // Prepare a map genre -> nb tracks
        Map<Genre, Integer> genreNbTracks = new HashMap<Genre, Integer>(
                GenreManager.getInstance().getElementCount());
        ReadOnlyIterator<Track> it = TrackManager.getInstance().getTracksIterator();
        while (it.hasNext()) {
            Track track = it.next();
            Genre genre = track.getGenre();
            Integer nbTracks = genreNbTracks.get(genre);
            if (nbTracks == null) {
                genreNbTracks.put(genre, 1);
            } else {
                genreNbTracks.put(genre, nbTracks + 1);
            }
        }
        // Cleanup genre with weight < 5 %
        for (Map.Entry<Genre, Integer> entry : genreNbTracks.entrySet()) {
            double d = entry.getValue();
            if (iTotal > 0 && d / iTotal < Conf.getFloat(CONF_STATS_MIN_VALUE_GENRE_DISPLAY) / 100) {
                // less than 5% -> go to others
                dOthers += d;
            } else {
                double dValue = Math.round(100 * (d / iTotal));
                pdata.setValue(entry.getKey().getName2(), dValue);
            }
        }
        if (iTotal > 0 && dOthers > 0) {
            double dValue = Math.round(100 * (dOthers / iTotal));
            pdata.setValue(Messages.getString("StatView.0"), dValue);
        }
        // chart
        jfchart = ChartFactory.createPieChart3D(Messages.getString("StatView.1"), pdata, true, true, true);
        // set the background color for the chart...
        PiePlot plot = (PiePlot) jfchart.getPlot();
        plot.setLabelFont(PiePlot.DEFAULT_LABEL_FONT);
        plot.setNoDataMessage(Messages.getString("StatView.2"));
        plot.setForegroundAlpha(0.5f);
        plot.setBackgroundAlpha(0.5f);
        plot.setLabelGenerator(new StandardPieSectionLabelGenerator("{0} = {2}"));
        plot.setToolTipGenerator(new StandardPieToolTipGenerator("{0} = {2}"));
        return new ChartPanel(jfchart);
    } catch (RuntimeException e) {
        Log.error(e);
        return null;
    }
}

From source file:Logic.FinanceController.java

public void drawCostPieChart(String date) {
    int[] values;
    values = getFinacialRecords(date);/*from  w w w . j a  va2s  .c o  m*/
    double purcahse = new Double(-(values[1]));
    double disposal = new Double(-(values[2]));
    double salary = new Double(-(values[3]));

    DefaultPieDataset dataset = new DefaultPieDataset();
    dataset.setValue("Purcahses", purcahse);
    dataset.setValue("Disposal of Inventory", disposal);
    dataset.setValue("Salaries", salary);

    JFreeChart chart = ChartFactory.createPieChart3D("Cost Breakdown", dataset, true, true, true);
    PiePlot3D p = (PiePlot3D) chart.getPlot();
    ChartFrame frame = new ChartFrame("Costs", chart);
    frame.setVisible(true);
    frame.setLocation(100, 100);
    frame.setSize(400, 400);
}

From source file:org.exist.xquery.modules.jfreechart.JFreeChartFactory.java

/**
 *  Create JFreeChart graph using the supplied parameters.
 *
 * @param chartType One of the many chart types.
 * @param conf      Chart configuration// w  ww.  ja  va  2s . c o  m
 * @param is        Inputstream containing chart data
 * @return          Initialized chart or NULL in case of issues.
 * @throws IOException Thrown when a problem is reported while parsing XML data.
 */
public static JFreeChart createJFreeChart(String chartType, Configuration conf, InputStream is)
        throws XPathException {

    logger.debug("Generating " + chartType);

    // Currently two dataset types supported
    CategoryDataset categoryDataset = null;
    PieDataset pieDataset = null;

    try {
        if ("PieChart".equals(chartType) || "PieChart3D".equals(chartType) || "RingChart".equals(chartType)) {
            logger.debug("Reading XML PieDataset");
            pieDataset = DatasetReader.readPieDatasetFromXML(is);

        } else {
            logger.debug("Reading XML CategoryDataset");
            categoryDataset = DatasetReader.readCategoryDatasetFromXML(is);
        }

    } catch (IOException ex) {
        throw new XPathException(ex.getMessage());

    } finally {
        try {
            is.close();
        } catch (IOException ex) {
            //
        }
    }

    // Return chart
    JFreeChart chart = null;

    // Big chart type switch
    if ("AreaChart".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createAreaChart(conf.getTitle(), conf.getCategoryAxisLabel(),
                conf.getValueAxisLabel(), categoryDataset, conf.getOrientation(), conf.isGenerateLegend(),
                conf.isGenerateTooltips(), conf.isGenerateUrls());

        setCategoryChartParameters(chart, conf);

    } else if ("BarChart".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createBarChart(conf.getTitle(), conf.getCategoryAxisLabel(),
                conf.getValueAxisLabel(), categoryDataset, conf.getOrientation(), conf.isGenerateLegend(),
                conf.isGenerateTooltips(), conf.isGenerateUrls());

        setCategoryChartParameters(chart, conf);

    } else if ("BarChart3D".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createBarChart3D(conf.getTitle(), conf.getCategoryAxisLabel(),
                conf.getValueAxisLabel(), categoryDataset, conf.getOrientation(), conf.isGenerateLegend(),
                conf.isGenerateTooltips(), conf.isGenerateUrls());

        setCategoryChartParameters(chart, conf);

    } else if ("LineChart".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createLineChart(conf.getTitle(), conf.getCategoryAxisLabel(),
                conf.getValueAxisLabel(), categoryDataset, conf.getOrientation(), conf.isGenerateLegend(),
                conf.isGenerateTooltips(), conf.isGenerateUrls());

        setCategoryChartParameters(chart, conf);

    } else if ("LineChart3D".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createLineChart3D(conf.getTitle(), conf.getCategoryAxisLabel(),
                conf.getValueAxisLabel(), categoryDataset, conf.getOrientation(), conf.isGenerateLegend(),
                conf.isGenerateTooltips(), conf.isGenerateUrls());

        setCategoryChartParameters(chart, conf);

    } else if ("MultiplePieChart".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createMultiplePieChart(conf.getTitle(), categoryDataset, conf.getOrder(),
                conf.isGenerateLegend(), conf.isGenerateTooltips(), conf.isGenerateUrls());

        setPieChartParameters(chart, conf);

    } else if ("MultiplePieChart3D".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createMultiplePieChart3D(conf.getTitle(), categoryDataset, conf.getOrder(),
                conf.isGenerateLegend(), conf.isGenerateTooltips(), conf.isGenerateUrls());

        setPieChartParameters(chart, conf);

    } else if ("PieChart".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createPieChart(conf.getTitle(), pieDataset, conf.isGenerateLegend(),
                conf.isGenerateTooltips(), conf.isGenerateUrls());

        setPieChartParameters(chart, conf);

    } else if ("PieChart3D".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createPieChart3D(conf.getTitle(), pieDataset, conf.isGenerateLegend(),
                conf.isGenerateTooltips(), conf.isGenerateUrls());

        setPieChartParameters(chart, conf);

    } else if ("RingChart".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createRingChart(conf.getTitle(), pieDataset, conf.isGenerateLegend(),
                conf.isGenerateTooltips(), conf.isGenerateUrls());

        setPieChartParameters(chart, conf);
    } else if ("SpiderWebChart".equalsIgnoreCase(chartType)) {
        SpiderWebPlot plot = new SpiderWebPlot(categoryDataset);
        if (conf.isGenerateTooltips()) {
            plot.setToolTipGenerator(new StandardCategoryToolTipGenerator());
        }
        chart = new JFreeChart(conf.getTitle(), JFreeChart.DEFAULT_TITLE_FONT, plot, false);

        if (conf.isGenerateLegend()) {
            LegendTitle legend = new LegendTitle(plot);
            legend.setPosition(RectangleEdge.BOTTOM);
            chart.addSubtitle(legend);
        } else {
            TextTitle subTitle = new TextTitle(" ");
            subTitle.setPosition(RectangleEdge.BOTTOM);
            chart.addSubtitle(subTitle);
        }

        setCategoryChartParameters(chart, conf);

    } else if ("StackedAreaChart".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createStackedAreaChart(conf.getTitle(), conf.getCategoryAxisLabel(),
                conf.getValueAxisLabel(), categoryDataset, conf.getOrientation(), conf.isGenerateLegend(),
                conf.isGenerateTooltips(), conf.isGenerateUrls());

        setCategoryChartParameters(chart, conf);

    } else if ("StackedBarChart".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createStackedBarChart(conf.getTitle(), conf.getDomainAxisLabel(),
                conf.getRangeAxisLabel(), categoryDataset, conf.getOrientation(), conf.isGenerateLegend(),
                conf.isGenerateTooltips(), conf.isGenerateUrls());

        setCategoryChartParameters(chart, conf);

    } else if ("StackedBarChart3D".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createStackedBarChart3D(conf.getTitle(), conf.getCategoryAxisLabel(),
                conf.getValueAxisLabel(), categoryDataset, conf.getOrientation(), conf.isGenerateLegend(),
                conf.isGenerateTooltips(), conf.isGenerateUrls());

        setCategoryChartParameters(chart, conf);

    } else if ("WaterfallChart".equalsIgnoreCase(chartType)) {
        chart = ChartFactory.createWaterfallChart(conf.getTitle(), conf.getCategoryAxisLabel(),
                conf.getValueAxisLabel(), categoryDataset, conf.getOrientation(), conf.isGenerateLegend(),
                conf.isGenerateTooltips(), conf.isGenerateUrls());

        setCategoryChartParameters(chart, conf);
    } else {
        logger.error("Illegal chartype. Choose one of " + "AreaChart BarChart BarChart3D LineChart LineChart3D "
                + "MultiplePieChart MultiplePieChart3D PieChart PieChart3D "
                + "RingChart SpiderWebChart StackedAreaChart StackedBarChart "
                + "StackedBarChart3D WaterfallChart");
    }

    setCommonParameters(chart, conf);

    return chart;
}

From source file:Simulator.PerformanceCalculation.java

public JPanel operationRoom() {
    DefaultPieDataset pieDataset = new DefaultPieDataset();
    for (int i = 1; i <= l.getOperationUtilization().size(); i++) {
        int count = l.getOperationUtilization().get(i).size();
        pieDataset.setValue("Operation Room " + i, count);
    }//from  w w  w .j a va  2 s  .com

    JFreeChart chart = ChartFactory.createPieChart3D("Operation Room Utilization", pieDataset, true, true,
            true);
    return new ChartPanel(chart);
}

From source file:Vista.frm_MasVendidoInforme.java

private void graficarDatos() {
    BL.Funciones_frm_MasVendido fun = new Funciones_frm_MasVendido();
    try {/*from  w w  w .j a v  a  2s.co  m*/
        DefaultPieDataset data = new DefaultPieDataset();
        for (int i = 0; i < id_producto.length; i++) {
            data.setValue(producto[i], fun.procentajeMasVendido(cantidad[i], sumatoriaCantidades()));
        }
        ChartPanel panel;
        JFreeChart chart = ChartFactory.createPieChart3D("PASTEL", data, true, true, true);
        panel = new ChartPanel(chart);
        panel.setBounds(0, 30, 450, 450);
        pan_derecha.add(panel);
    } catch (Exception e) {
        JOptionPane.showMessageDialog(null, e);
    }
}

From source file:com.himtech.googlechart.GglPieChart.java

private JFreeChart createChart(PieDataset pdSet, String title) {
    JFreeChart chart = ChartFactory.createPieChart3D(title, pdSet, true, true, false);

    /*PiePlot3D plot = (PiePlot3D)chart.getPlot();
    plot.setStartAngle(290);//from   w w w . ja v a 2 s. c  om
    plot.setDirection(Rotation.CLOCKWISE);
    //plot.setForegroundAlpha(0.5f);
    plot.setLabelGap(0.02);*/

    PiePlot plot = (PiePlot) chart.getPlot();
    //plot.setLabelFont(new Font("SansSerif", Font.PLAIN, 12));
    plot.setNoDataMessage("No data available");
    plot.setCircular(false);
    plot.setLabelGap(0.02);
    return chart;

}

From source file:org.lsug.quota.portlet.ServerQuotaPortlet.java

protected JFreeChart getCurrentSizeJFreeChart(String title, PieDataset pieDataset) {
    JFreeChart jFreeChart = ChartFactory.createPieChart3D(title, pieDataset, true, false, null);

    jFreeChart.setBackgroundPaint(Color.white);

    return jFreeChart;
}