Example usage for org.jfree.chart ChartFactory createPieChart

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

Introduction

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

Prototype

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

Source Link

Document

Creates a pie chart with default settings.

Usage

From source file:userInterface.SystemAdmin.PovertyAnalysisJPanel.java

private void crimeAnalysisJButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_crimeAnalysisJButtonActionPerformed
    JFreeChart pieChart = ChartFactory.createPieChart("Crminal Incidents", pireChartDataset, true, true, true);
    PiePlot plot = (PiePlot) pieChart.getPlot();
    ChartFrame perFrame = new ChartFrame("Crminal Incidents By Network ", pieChart);
    perFrame.setVisible(true);//  ww w. ja v  a  2s  .c  o m
    perFrame.setSize(500, 500);
}

From source file:banking.modules.salary_comp.java

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
    // TODO add your handling code here:

    String Basic_salary = txtBasic.getText();
    String House_all = txtHouse.getText();
    String Dear_all = txtDearness.getText();
    String Trans_all = txtTransport.getText();
    String Ent_all = txtEntertainment.getText();
    String Med_all = txtMedical.getText();

    DefaultPieDataset pieDataset = new DefaultPieDataset();
    pieDataset.setValue("Basic_salary", new Double(Basic_salary));
    pieDataset.setValue("House_all", new Double(House_all));
    pieDataset.setValue("Dear_all", new Double(Dear_all));
    pieDataset.setValue("Trans_all", new Double(Trans_all));
    pieDataset.setValue("Ent_all", new Double(Ent_all));
    pieDataset.setValue("Med_all", new Double(Med_all));

    JFreeChart chart = ChartFactory.createPieChart("Renumaration pie chart", pieDataset, true, true, true);
    PiePlot P = (PiePlot) chart.getPlot();
    // P.setForegroundAlpha(TOP_ALIGNMENT);
    ChartFrame frame = new ChartFrame("SALARY DISTRIBUTION", chart);
    frame.setVisible(true);//from ww w .j  a  v a 2 s .  c o m
    frame.setSize(450, 500);

}

From source file:org.openmrs.web.controller.ConceptStatsFormController.java

/**
 * Called prior to form display. Allows for data to be put in the request to be used in the view
 *
 * @see org.springframework.web.servlet.mvc.SimpleFormController#referenceData(javax.servlet.http.HttpServletRequest)
 *///from w ww .  jav a 2s .  co  m
protected Map<String, Object> referenceData(HttpServletRequest request) throws Exception {

    Map<String, Object> map = new HashMap<String, Object>();
    if (!Context.hasPrivilege("View Observations")) {
        return map;
    }

    MessageSourceAccessor msa = getMessageSourceAccessor();
    Locale locale = Context.getLocale();
    ConceptService cs = Context.getConceptService();
    String conceptId = request.getParameter("conceptId");
    //List<Obs> obs = new Vector<Obs>();
    //List<Obs> obsAnswered = new Vector<Obs>();

    if (conceptId != null) {
        Concept concept = cs.getConcept(Integer.valueOf(conceptId));
        ObsService obsService = Context.getObsService();

        if (concept != null) {

            // previous/next ids for links
            map.put("previousConcept", cs.getPrevConcept(concept));
            map.put("nextConcept", cs.getNextConcept(concept));

            //obs = obsService.getObservations(concept, "valueNumeric, obsId");
            //obsAnswered = obsService.getObservationsAnsweredByConcept(concept);

            if (ConceptDatatype.NUMERIC.equals(concept.getDatatype().getHl7Abbreviation())) {
                map.put("displayType", "numeric");

                List<Obs> numericAnswers = obsService.getObservations(null, null,
                        Collections.singletonList(concept), null,
                        Collections.singletonList(OpenmrsConstants.PERSON_TYPE.PERSON), null,
                        Collections.singletonList("valueNumeric"), null, null, null, null, false);

                if (numericAnswers.size() > 0) {
                    Double min = numericAnswers.get(0).getValueNumeric();
                    Double max = (Double) numericAnswers.get(numericAnswers.size() - 1).getValueNumeric();
                    Double median = (Double) numericAnswers.get(numericAnswers.size() / 2).getValueNumeric();

                    Map<Double, Integer> counts = new HashMap<Double, Integer>(); // counts for the histogram
                    Double total = 0.0; // sum of values. used for mean

                    // dataset setup for lineChart
                    TimeSeries timeSeries = new TimeSeries(concept.getName().getName(), Day.class);
                    TimeSeriesCollection timeDataset = new TimeSeriesCollection();
                    Calendar calendar = Calendar.getInstance();

                    // array for histogram
                    double[] obsNumerics = new double[(numericAnswers.size())];

                    Integer i = 0;
                    for (Obs obs : numericAnswers) {
                        Date date = (Date) obs.getObsDatetime();
                        Double value = (Double) obs.getValueNumeric();

                        // for mean calculation
                        total += value;

                        // for histogram
                        obsNumerics[i++] = value;
                        Integer count = counts.get(value);
                        counts.put(value, count == null ? 1 : count + 1);

                        // for line chart
                        calendar.setTime(date);
                        Day day = new Day(calendar.get(Calendar.DAY_OF_MONTH), calendar.get(Calendar.MONTH) + 1, // January = 0 
                                calendar.get(Calendar.YEAR) < 1900 ? 1900 : calendar.get(Calendar.YEAR) // jfree chart doesn't like the 19th century
                        );
                        timeSeries.addOrUpdate(day, value);
                    }

                    Double size = new Double(numericAnswers.size());
                    Double mean = total / size;

                    map.put("size", numericAnswers.size());
                    map.put("min", min);
                    map.put("max", max);
                    map.put("mean", mean);
                    map.put("median", median);

                    // create histogram chart
                    HistogramDataset histDataset = new HistogramDataset(); // dataset for histogram
                    histDataset.addSeries(concept.getName().getName(), obsNumerics, counts.size());

                    JFreeChart histogram = ChartFactory.createHistogram(concept.getName().getName(),
                            msa.getMessage("Concept.stats.histogramDomainAxisTitle"),
                            msa.getMessage("Concept.stats.histogramRangeAxisTitle"), histDataset,
                            PlotOrientation.VERTICAL, false, true, false);
                    map.put("histogram", histogram);

                    if (size > 25) {
                        // calculate 98th percentile of the data:
                        Double x = 0.98;
                        Integer xpercentile = (int) (x * size);
                        Double upperQuartile = numericAnswers.get(xpercentile).getValueNumeric();
                        Double lowerQuartile = numericAnswers.get((int) (size - xpercentile)).getValueNumeric();
                        Double innerQuartile = upperQuartile - lowerQuartile;
                        Double innerQuartileLimit = innerQuartile * 1.5; // outliers will be greater than this from the upper/lower quartile
                        Double upperQuartileLimit = upperQuartile + innerQuartileLimit;
                        Double lowerQuartileLimit = lowerQuartile - innerQuartileLimit;

                        List<Obs> outliers = new Vector<Obs>();

                        // move outliers to the outliers list
                        // removing lower quartile outliers
                        for (i = 0; i < size - xpercentile; i++) {
                            Obs possibleOutlier = numericAnswers.get(i);
                            if (possibleOutlier.getValueNumeric() >= lowerQuartileLimit) {
                                break; // quit if this value is greater than the lower limit
                            }
                            outliers.add(possibleOutlier);
                        }

                        // removing upper quartile outliers
                        for (i = size.intValue() - 1; i >= xpercentile; i--) {
                            Obs possibleOutlier = numericAnswers.get(i);
                            if (possibleOutlier.getValueNumeric() <= upperQuartileLimit) {
                                break; // quit if this value is less than the upper limit
                            }
                            outliers.add(possibleOutlier);
                        }
                        numericAnswers.removeAll(outliers);

                        double[] obsNumericsOutliers = new double[(numericAnswers.size())];
                        i = 0;
                        counts.clear();
                        for (Obs values : numericAnswers) {
                            Double value = values.getValueNumeric();
                            obsNumericsOutliers[i++] = value;
                            Integer count = counts.get(value);
                            counts.put(value, count == null ? 1 : count + 1);
                        }

                        // create outlier histogram chart
                        HistogramDataset outlierHistDataset = new HistogramDataset();
                        outlierHistDataset.addSeries(concept.getName().getName(), obsNumericsOutliers,
                                counts.size());

                        JFreeChart histogramOutliers = ChartFactory.createHistogram(concept.getName().getName(),
                                msa.getMessage("Concept.stats.histogramDomainAxisTitle"),
                                msa.getMessage("Concept.stats.histogramRangeAxisTitle"), outlierHistDataset,
                                PlotOrientation.VERTICAL, false, true, false);
                        map.put("histogramOutliers", histogramOutliers);
                        map.put("outliers", outliers);

                    }

                    // create line graph chart
                    timeDataset.addSeries(timeSeries);
                    JFreeChart lineChart = ChartFactory.createTimeSeriesChart(concept.getName().getName(),
                            msa.getMessage("Concept.stats.lineChartDomainAxisLabel"),
                            msa.getMessage("Concept.stats.lineChartRangeAxisLabel"), timeDataset, false, true,
                            false);
                    map.put("timeSeries", lineChart);

                }
            } else if (ConceptDatatype.BOOLEAN.equals(concept.getDatatype().getHl7Abbreviation())) {
                // create bar chart for boolean answers
                map.put("displayType", "boolean");

                List<Obs> obs = obsService.getObservations(null, null, Collections.singletonList(concept), null,
                        Collections.singletonList(OpenmrsConstants.PERSON_TYPE.PERSON), null, null, null, null,
                        null, null, false);

                DefaultPieDataset pieDataset = new DefaultPieDataset();

                // count the number of unique answers
                Map<String, Integer> counts = new HashMap<String, Integer>();
                for (Obs o : obs) {
                    Boolean answer = o.getValueAsBoolean();
                    if (answer == null) {
                        answer = false;
                    }
                    String name = answer.toString();
                    Integer count = counts.get(name);
                    counts.put(name, count == null ? 1 : count + 1);
                }

                // put the counts into the dataset
                for (Map.Entry<String, Integer> entry : counts.entrySet()) {
                    pieDataset.setValue(entry.getKey(), entry.getValue());
                }

                JFreeChart pieChart = ChartFactory.createPieChart(concept.getName().getName(), pieDataset, true,
                        true, false);
                map.put("pieChart", pieChart);

            } else if (ConceptDatatype.CODED.equals(concept.getDatatype().getHl7Abbreviation())) {
                // create pie graph for coded answers
                map.put("displayType", "coded");

                List<Obs> obs = obsService.getObservations(null, null, Collections.singletonList(concept), null,
                        Collections.singletonList(OpenmrsConstants.PERSON_TYPE.PERSON), null, null, null, null,
                        null, null, false);

                DefaultPieDataset pieDataset = new DefaultPieDataset();

                // count the number of unique answers
                Map<String, Integer> counts = new HashMap<String, Integer>();
                for (Obs o : obs) {
                    Concept value = o.getValueCoded();
                    String name;
                    if (value == null) {
                        name = "[value_coded is null]";
                    } else {
                        name = value.getName().getName();
                    }
                    Integer count = counts.get(name);
                    counts.put(name, count == null ? 1 : count + 1);
                }

                // put the counts into the dataset
                for (Map.Entry<String, Integer> entry : counts.entrySet()) {
                    pieDataset.setValue(entry.getKey(), entry.getValue());
                }

                JFreeChart pieChart = ChartFactory.createPieChart(concept.getName().getName(), pieDataset, true,
                        true, false);
                map.put("pieChart", pieChart);

            }
        }

    }

    //map.put("obs", obs);
    //map.put("obsAnswered", obsAnswered);

    map.put("locale", locale.getLanguage().substring(0, 2));

    return map;
}

From source file:org.yccheok.jstock.gui.SellPortfolioChartJDialog.java

private JFreeChart createChart(String name) {
    final JStockOptions jStockOptions = JStock.instance().getJStockOptions();
    final boolean isFeeCalculationEnabled = jStockOptions.isFeeCalculationEnabled();

    final Portfolio portfolio = (Portfolio) portfolioTreeTableModel.getRoot();
    final int count = portfolio.getChildCount();
    DefaultPieDataset data = new DefaultPieDataset();
    final List<DataEx> dataExs = new ArrayList<>();

    for (int i = 0; i < count; i++) {
        TransactionSummary transactionSummary = (TransactionSummary) portfolio.getChildAt(i);

        if (transactionSummary.getChildCount() <= 0) {
            continue;
        }//from  w  w w .ja v  a  2 s  .  c  om

        Transaction transaction = (Transaction) transactionSummary.getChildAt(0);
        final Symbol symbol = transaction.getStock().symbol;
        final Code code = transaction.getStock().code;

        final boolean shouldConvertPenceToPound = org.yccheok.jstock.portfolio.Utils
                .shouldConvertPenceToPound(portfolioRealTimeInfo, code);

        /* Should use reflection technology. */
        if (name.equals(cNames[0])) {
            if (shouldConvertPenceToPound == false) {
                if (isFeeCalculationEnabled) {
                    dataExs.add(DataEx.newInstance(symbol.toString(),
                            portfolioTreeTableModel.getNetGainLossValue(transactionSummary)));
                } else {
                    dataExs.add(DataEx.newInstance(symbol.toString(),
                            portfolioTreeTableModel.getGainLossValue(transactionSummary)));
                }
            } else {
                if (isFeeCalculationEnabled) {
                    dataExs.add(DataEx.newInstance(symbol.toString(),
                            portfolioTreeTableModel.getNetGainLossValue(transactionSummary) / 100.0));
                } else {
                    dataExs.add(DataEx.newInstance(symbol.toString(),
                            portfolioTreeTableModel.getGainLossValue(transactionSummary) / 100.0));
                }
            }
        } else if (name.equals(cNames[1])) {
            if (shouldConvertPenceToPound == false) {
                if (isFeeCalculationEnabled) {
                    dataExs.add(DataEx.newInstance(symbol.toString(),
                            -portfolioTreeTableModel.getNetGainLossValue(transactionSummary)));
                } else {
                    dataExs.add(DataEx.newInstance(symbol.toString(),
                            -portfolioTreeTableModel.getGainLossValue(transactionSummary)));
                }
            } else {
                if (isFeeCalculationEnabled) {
                    dataExs.add(DataEx.newInstance(symbol.toString(),
                            -portfolioTreeTableModel.getNetGainLossValue(transactionSummary) / 100.0));
                } else {
                    dataExs.add(DataEx.newInstance(symbol.toString(),
                            -portfolioTreeTableModel.getGainLossValue(transactionSummary) / 100.0));
                }
            }
        } else if (name.equals(cNames[2])) {
            if (isFeeCalculationEnabled) {
                dataExs.add(DataEx.newInstance(symbol.toString(),
                        portfolioTreeTableModel.getNetGainLossPercentage(transactionSummary)));
            } else {
                dataExs.add(DataEx.newInstance(symbol.toString(),
                        portfolioTreeTableModel.getGainLossPercentage(transactionSummary)));
            }
        } else if (name.equals(cNames[3])) {
            if (isFeeCalculationEnabled) {
                dataExs.add(DataEx.newInstance(symbol.toString(),
                        -portfolioTreeTableModel.getNetGainLossPercentage(transactionSummary)));
            } else {
                dataExs.add(DataEx.newInstance(symbol.toString(),
                        -portfolioTreeTableModel.getGainLossPercentage(transactionSummary)));
            }
        } else if (name.equals(cNames[4])) {
            Double value = this.codeToTotalDividend.get(code);
            if (value != null) {
                if (value.doubleValue() > 0.0) {
                    dataExs.add(DataEx.newInstance(symbol.toString(), this.codeToTotalDividend.get(code)));
                }
            }
        } else if (name.equals(cNames[5])) {
            if (shouldConvertPenceToPound == false) {
                if (isFeeCalculationEnabled) {
                    dataExs.add(DataEx.newInstance(symbol.toString(), transactionSummary.getNetTotal()));
                } else {
                    dataExs.add(DataEx.newInstance(symbol.toString(), transactionSummary.getTotal()));
                }
            } else {
                if (isFeeCalculationEnabled) {
                    dataExs.add(
                            DataEx.newInstance(symbol.toString(), transactionSummary.getNetTotal() / 100.0));
                } else {
                    dataExs.add(DataEx.newInstance(symbol.toString(), transactionSummary.getTotal() / 100.0));
                }
            }
        } else if (name.equals(cNames[6])) {
            if (shouldConvertPenceToPound == false) {
                if (isFeeCalculationEnabled) {
                    dataExs.add(
                            DataEx.newInstance(symbol.toString(), transactionSummary.getNetReferenceTotal()));
                } else {
                    dataExs.add(DataEx.newInstance(symbol.toString(), transactionSummary.getReferenceTotal()));
                }
            } else {
                if (isFeeCalculationEnabled) {
                    dataExs.add(DataEx.newInstance(symbol.toString(),
                            transactionSummary.getNetReferenceTotal() / 100.0));
                } else {
                    dataExs.add(DataEx.newInstance(symbol.toString(),
                            transactionSummary.getReferenceTotal() / 100.0));
                }
            }
        } else if (name.equals(cNames[7])) {
            dataExs.add(DataEx.newInstance(symbol.toString(), transactionSummary.getQuantity()));
        } else if (name.equals(cNames[8])) {
            dataExs.add(DataEx.newInstance(symbol.toString(), transactionSummary.getBroker()));
        } else if (name.equals(cNames[9])) {
            dataExs.add(DataEx.newInstance(symbol.toString(), transactionSummary.getStampDuty()));
        } else if (name.equals(cNames[10])) {
            dataExs.add(DataEx.newInstance(symbol.toString(), transactionSummary.getClearingFee()));
        }
    }

    Collections.sort(dataExs);

    for (DataEx dataEx : dataExs) {
        // Selling value can be negative sometimes.
        if (dataEx.value <= 0) {
            continue;
        }

        data.setValue(dataEx.data, dataEx.value);
    }

    // create a chart...
    return ChartFactory.createPieChart(name, data, true, true, true);
}

From source file:com.jd.survey.web.statistics.StatisticsController.java

@Secured({ "ROLE_ADMIN", "ROLE_SURVEY_ADMIN" })
private JFreeChart createChart(PieDataset pieDataset, String title) {
    try {/*from www . j a  v  a  2  s  .co m*/
        JFreeChart chart = ChartFactory.createPieChart(title, pieDataset, false, true, false);

        chart.setBackgroundPaint(null);//this line necessary for transparency of background
        final ChartPanel chartPanel = new ChartPanel(chart);
        chartPanel.setOpaque(false); //this line necessary for transparency of background
        chartPanel.setBackground(new Color(0, 0, 0, 0)); //this line necessary for transparency of background

        PiePlot plot = (PiePlot) chart.getPlot();

        //Color[] colors = {new Color(170, 195, 217, 255),new Color(246, 140, 31, 255),new Color(204, 204, 204, 255),new Color(231, 238, 144, 255),new Color(51, 51, 51, 255),new Color(101, 125, 151, 255),new Color(0, 102, 255, 255)}; 
        //PieRenderer renderer = new PieRenderer(colors); 
        //renderer.setColor(plot, pieDataset);

        PieSectionLabelGenerator generator = new StandardPieSectionLabelGenerator("{0}:{1}%");
        plot.setLabelGenerator(generator);

        plot.setStartAngle(270);
        plot.setDirection(Rotation.CLOCKWISE);

        return chart;
    } catch (Exception e) {
        log.error(e.getMessage(), e);
        throw (new RuntimeException(e));
    }
}

From source file:userinterface.EnvironmentRole.PollutionCheckJPanel.java

private void btnSincereCarOwnerActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnSincereCarOwnerActionPerformed
    DefaultPieDataset pieDataset = new DefaultPieDataset();
    //        int f = 0;

    for (Organization organization : enterprise.getOrganizationDirectory().getOrganizationList()) {
        if (organization instanceof CarOwnerOrganization) {
            for (UserAccount userAccount : ((CarOwnerOrganization) organization).getUserAccountDirectory()
                    .getUserAccountList()) {
                int f = 0;
                for (WorkRequest request : environmentOrganization.getWorkQueue().getWorkRequestList()) {
                    if (request.getSender() == userAccount) {
                        f = f + ((EnvironmentWorkRequest) request).getFine();
                    }//from w w  w  . j  a  v a  2  s . com
                }
                pieDataset.setValue(userAccount.getEmployee().getName(), f);
            }
        }
    }

    JFrame frame = new JFrame("PieChart");
    frame.setSize(600, 400);
    frame.setVisible(true);

    JFreeChart pieChart = ChartFactory.createPieChart("Best Car Owner in terms of fine charged", // Title
            pieDataset, // Dataset
            true, // Show legend
            true, // Use tooltips
            false // Configure chart to generate URLs?
    );

    ChartPanel cp1 = new ChartPanel(pieChart);

    frame.getContentPane().add(cp1);

}

From source file:GUI.GUI_reporting.java

private void btnLancerStatActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnLancerStatActionPerformed
    // TODO add your handling code here:

    // faire la requete sql et ranger les variables aux bon endroits
    JDialog reponse = new JDialog();
    DefaultPieDataset pieDataset = new DefaultPieDataset();
    final DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    String text = "";
    String Infox = "";
    String Infoy = "";
    switch (action) {//////////////////:Pie charts//////////////////////////////////////
    case 1:/*  w  ww .j a  v  a2 s.c o  m*/
        //set values
        pieDataset.setValue("de 700  1100", getEmployeParSalaire(1));
        pieDataset.setValue("de 1100  1300", getEmployeParSalaire(2));
        pieDataset.setValue("de 1300  1700", getEmployeParSalaire(3));
        pieDataset.setValue("Plus de 1700", getEmployeParSalaire(4));
        text = "Nombre d'employs par tranche de salaire";
        break;

    case 2:
        //set values
        pieDataset.setValue("REA", getEmployeParService(1));
        pieDataset.setValue("CHG", getEmployeParService(2));
        pieDataset.setValue("CAR", getEmployeParService(3));
        text = "Nombre d'employs par service";
        break;
    case 3:
        //set values
        pieDataset.setValue("Anesthesiste", getEmployeParSpecialite(1));
        pieDataset.setValue("Cardiologue", getEmployeParSpecialite(2));
        pieDataset.setValue("Generaliste", getEmployeParSpecialite(3));
        pieDataset.setValue("Orthopediste", getEmployeParSpecialite(4));
        pieDataset.setValue("Pneumologue", getEmployeParSpecialite(5));
        pieDataset.setValue("Radiologue", getEmployeParSpecialite(6));
        pieDataset.setValue("Traumatologue", getEmployeParSpecialite(7));
        text = "Nombre d'employs par spcialit";
        break;
    case 4:
        //set values
        pieDataset.setValue("Jour", getEmployeRotation(1));
        pieDataset.setValue("Nuit", getEmployeRotation(2));
        text = "Nombre d'employs par rotation";
        break;
    /// diagrammes en barre/////////////////////////////
    case 5:
        //dataset.addValue(WIDTH, WIDTH, action);
        final String REA = "Moyenne pour REA";
        final String CHG = "Moyenne pour CHG";
        final String CAR = "Moyenne pour CAR";
        final String salaire = "salaire";
        dataset.addValue(getSalaireParService(1), salaire, REA);
        dataset.addValue(getSalaireParService(2), salaire, CHG);
        dataset.addValue(getSalaireParService(3), salaire, CAR);
        Infox = "service";
        Infoy = "salaire";
        text = "Salaire moyen par service";
        break;

    case 6:
        //set values
        final String malade = "Malade";
        final String rea = "REA";
        final String chg = "CHG";
        final String car = "CAR";
        dataset.addValue(getMaladeParService(1), malade, rea);
        dataset.addValue(getMaladeParService(2), malade, chg);
        dataset.addValue(getMaladeParService(3), malade, car);
        Infox = "Service";
        Infoy = "Nombre de malades";
        text = "Nombre de malade par service";
        break;
    case 7:
        //set values
        final String MAAF = "MAAF";
        final String MNAM = "MNAM";
        final String LMDE = "LMDE";
        final String MNH = "MNH";
        final String MGEN = "MGEN";
        final String MMA = "MMA";
        final String CNAMTS = "CNAMTS";
        final String CCVRP = "CCVRP";
        final String MAS = "MAS";
        final String AG2R = "AG2R";
        final String MNFTC = "MNFTC";
        final String MGSP = "MGSP";
        final String salaire0 = "Mutuelle";
        Infox = "Mutuelle";
        Infoy = "Malades";
        text = "Nombre de malades par mutuelle";

        //                      / init
        dataset.addValue(getMaladeParMutuelle(1), salaire0, MAAF);
        dataset.addValue(getMaladeParMutuelle(2), salaire0, MNAM);
        dataset.addValue(getMaladeParMutuelle(3), salaire0, LMDE);
        dataset.addValue(getMaladeParMutuelle(4), salaire0, MNH);
        dataset.addValue(getMaladeParMutuelle(5), salaire0, MGEN);
        dataset.addValue(getMaladeParMutuelle(6), salaire0, MMA);
        dataset.addValue(getMaladeParMutuelle(7), salaire0, CNAMTS);
        dataset.addValue(getMaladeParMutuelle(8), salaire0, CCVRP);
        dataset.addValue(getMaladeParMutuelle(9), salaire0, MAS);
        dataset.addValue(getMaladeParMutuelle(10), salaire0, AG2R);
        dataset.addValue(getMaladeParMutuelle(11), salaire0, MNFTC);
        dataset.addValue(getMaladeParMutuelle(12), salaire0, MGSP);
        break;

    case 8:
        //set values
        final String malades = "Chambre";
        final String reas = "REA";
        final String chgs = "CHG";
        final String cars = "CAR";
        dataset.addValue(getChambreParService(1), malades, reas);
        dataset.addValue(getChambreParService(2), malades, chgs);
        dataset.addValue(getChambreParService(3), malades, cars);
        Infox = "Service";
        Infoy = "Nombre de chambre";
        text = "Nombre de chambre par service";
        break;

    default:
        break;

    }
    // Piechart
    if (action > 0 && action < 5) {
        final JFreeChart pieChart = ChartFactory.createPieChart(text, pieDataset, true, false, false);
        final ChartPanel cPanel = new ChartPanel(pieChart);
        reponse.add(cPanel);
        reponse.pack();
        //panelHistogramme.pack();
        reponse.setVisible(true);
    }
    //Histogramme
    if (action > 4 && action < 11) {

        final JFreeChart barChart = ChartFactory.createBarChart(text, Infox, Infoy, dataset,
                PlotOrientation.VERTICAL, true, true, false);
        final ChartPanel cPanel = new ChartPanel(barChart);
        reponse.add(cPanel);
        reponse.pack();
        //panelHistogramme.pack();
        reponse.setVisible(true);
    }

    /*
     DefaultPieDataset pieDataset = new DefaultPieDataset(); 
     pieDataset.setValue("Valeur1", new Integer(27)); 
     pieDataset.setValue("Valeur2", new Integer(10)); 
     pieDataset.setValue("Valeur3", new Integer(50)); 
     pieDataset.setValue("Valeur4", new Integer(5)); 
     JFreeChart pieChart = ChartFactory.createPieChart("Test camembert",pieDataset, true, true, true); 
     ChartPanel cPanel = new ChartPanel(pieChart); 
     panelHistogramme.add(cPanel); 
     */

}

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

private JFreeChart createPieChart() {
    final JFreeChart chart = ChartFactory.createPieChart(chartModel.get_Translation(MChart.COLUMNNAME_Name),
            getPieDataset(), false, true, true);

    return chart;
}

From source file:org.pau.assetmanager.viewmodel.MonthlyReportViewModel.java

/**
 * Generates the image of a pie chart that displays the percentage of
 * expenses of the different books which for a given year are loosing money
 * (not profitable)/*from   w ww.j av a  2 s  .  c o m*/
 * 
 * @return the relative random URL generated
 */
@DependsOn({ "selectedBook", "clientType", "monthlyReportYear" })
public String getDeficitPieChartURL() {
    if (bookSelection.getSelectedBook() == null) {
        return "";
    }
    List<Annotation> anotations = getAnnotationsInAscendingDateOrder(Optional.of(monthlyReportYear));
    PieDataset categoryModel = ChartDataModel.deficitsPieChartDataset(anotations);
    JFreeChart jfchart = ChartFactory.createPieChart(
            "Dficit ( ingresos menos gastos, siendo los gastos mayores a los ingresos )", categoryModel, true,
            true, false);
    PiePlot piePlot = ((PiePlot) jfchart.getPlot());
    piePlot.setLabelGenerator(new StandardPieSectionLabelGenerator("{0} (-{1} , {2} )",
            NumberFomatter.PERCENTAGE_FORMATTER, NumberFormat.getPercentInstance()));
    piePlot.setBackgroundPaint(Color.white);
    return ResourceImageGenerator.getFunction().apply(jfchart);
}

From source file:com.NewJFrame.java

private static JFreeChart createPieChart(PieDataset dataset) {

    JFreeChart chart = ChartFactory.createPieChart("Chart Title", // chart title
            dataset, // data
            true, // include legend
            true, false);/* ww w. ja  va2 s  .c  om*/

    PiePlot plot = (PiePlot) chart.getPlot();
    plot.setSectionOutlinesVisible(false);
    plot.setNoDataMessage("No data available");
    PieSectionLabelGenerator gen = new StandardPieSectionLabelGenerator("{0}: {2}", new DecimalFormat("0"),
            new DecimalFormat("0%"));
    plot.setLabelGenerator(gen);

    return chart;

}