Example usage for org.jfree.data.general DefaultPieDataset setValue

List of usage examples for org.jfree.data.general DefaultPieDataset setValue

Introduction

In this page you can find the example usage for org.jfree.data.general DefaultPieDataset setValue.

Prototype

public void setValue(Comparable key, double value) 

Source Link

Document

Sets the data value for a key and sends a DatasetChangeEvent to all registered listeners.

Usage

From source file:Graficas.java

public void opera() {
    String sql = "select nombre,turno,grado,materia,Resultado,Criterios,anio, avg(Resultado) promedio,sum(Resultado) suma\n"
            + "from nivellogro n,turno t, escuela e, materias m, grados g\n"
            + "where n.idMaterias = m.idMaterias and n.idEscuela = e.idEscuela and n.idTurno = t.idTurno and n.idGrados = g.idGrados\n"
            + "group by nombre ORDER BY rand() LIMIT 0,20;";

    int cont = 0;

    try {//from  w  w  w . ja  va2  s  .com
        Connection con = conexionMySQL.GetConnection();
        DefaultPieDataset data = new DefaultPieDataset();
        // Statement st = con.createStatement();
        PreparedStatement ps = con.prepareStatement(sql);
        ResultSet rs = ps.executeQuery();

        while (rs.next()) {

            if (cont <= 10) {
                data.setValue(rs.getString("nombre"), rs.getDouble("promedio"));
                cont++;
            }
        }

        JFreeChart chart = ChartFactory.createPieChart("Aprovechamiento por escuelas", data, true, true, false);

        ChartFrame frame = new ChartFrame("JFreeChart", chart);
        frame.pack();
        frame.setVisible(true);

    } catch (SQLException ex) {
        Logger.getLogger(Graficas.class.getName()).log(Level.SEVERE, null, ex);
    }

}

From source file:org.adempiere.webui.dashboard.CalendarWindow.java

private void syncModel() {
    Hashtable<String, BigDecimal> ht = new Hashtable<String, BigDecimal>();

    List<?> list = calendars.getModel().get(calendars.getBeginDate(), calendars.getEndDate(), null);
    int size = list.size();
    for (Iterator<?> it = list.iterator(); it.hasNext();) {
        String key = ((ADCalendarEvent) it.next()).getR_RequestType_ID() + "";

        if (!ht.containsKey(key))
            ht.put(key, BigDecimal.ONE);
        else {//from w  w w. java2  s  .  com
            BigDecimal value = ht.get(key);
            ht.put(key, value.add(BigDecimal.ONE));
        }
    }

    Hashtable<Object, String> htTypes = new Hashtable<Object, String>();
    for (int i = 0; i < lbxRequestTypes.getItemCount(); i++) {
        Listitem li = lbxRequestTypes.getItemAtIndex(i);
        if (li != null && li.getValue() != null)
            htTypes.put(li.getValue(), li.getLabel());
    }

    DefaultPieDataset pieDataset = new DefaultPieDataset();
    Enumeration<?> keys = ht.keys();
    while (keys.hasMoreElements()) {
        String key = (String) keys.nextElement();
        BigDecimal value = ht.get(key);
        String name = (String) htTypes.get(key);
        pieDataset.setValue(name == null ? "" : name,
                new Double(size > 0 ? value.doubleValue() / size * 100 : 0));
    }

    JFreeChart chart = ChartFactory.createPieChart3D(Msg.getMsg(Env.getCtx(), "EventsAnalysis"), pieDataset,
            true, true, true);
    PiePlot3D plot = (PiePlot3D) chart.getPlot();
    plot.setForegroundAlpha(0.5f);
    BufferedImage bi = chart.createBufferedImage(600, 250);
    try {
        byte[] bytes = EncoderUtil.encode(bi, ImageFormat.PNG, true);
        AImage image = new AImage("Pie Chart", bytes);
        myChart.setContent(image);
    } catch (IOException e) {
        e.printStackTrace();
    }
    htTypes = null;
    ht = null;
}

From source file:Simulator.PerformanceCalculation.java

public JPanel surgeonOperation() {
    DefaultPieDataset pieDataset = new DefaultPieDataset();
    for (int i = 1; i <= l.getSurgeonUtilization().size(); i++) {
        int count = l.getSurgeonUtilization().get(i).size();
        pieDataset.setValue("Surgeon ID " + i, count);
    }//from  w  ww .j av  a 2s .c  o m

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

From source file:UserInterface.ViewPatientJPanel.java

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

    String weight = txtWeight.getText();
    String hrtRate = txtHeartRate.getText();
    String bp = txtSystolicBloodPressure.getText();
    String respiRate = txtRespiratoryRate.getText();

    DefaultPieDataset pieDataset = new DefaultPieDataset();

    pieDataset.setValue("Respiratory Rate", new Float(respiRate));
    pieDataset.setValue("Heart Rate", new Float(hrtRate));
    pieDataset.setValue("Blood Pressure", new Float(bp));
    pieDataset.setValue("Weight", new Float(weight));

    JFreeChart chart = ChartFactory.createPieChart("Pie chart", pieDataset, true, true, true);

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

    ChartFrame frame = new ChartFrame("Pie Charrt", chart);
    frame.setVisible(true);//from   w w w  . j  a v a  2s.  c  om
    frame.setSize(450, 500);

}

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);
    }/*  w w  w. ja  v a  2s  .c  om*/

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

From source file:de.main.sessioncreator.ReportingHelper.java

/**
 * Creates a sample dataset//from  w ww . j a v  a2  s . com
 */
private PieDataset createDataset() {
    DefaultPieDataset result = new DefaultPieDataset();
    ArrayList<String> Tester = new ArrayList<String>();
    ArrayList<String> sessionList = fileHelper.getSessionList(fileHelper.getApprovedDir());
    Tester = fileHelper.getTester();
    int[] counter = new int[Tester.size()];
    for (String s : sessionList) {
        for (String n : Tester) {
            if (s.contains(n.substring(0, 3))) {
                counter[Tester.indexOf(n)]++;
                break;
            }
        }
    }
    for (String n : Tester) {
        result.setValue(n.substring(4), counter[Tester.indexOf(n)]);
    }
    return result;

}

From source file:UserInterfaces.HAdministration.BloodReportJPanel.java

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

    int timeofem = 0;
    int timeofpha = 0;
    int timeofward = 0;
    int timeofor = 0;
    int timeoflab = 0;
    int timeofoutpatient = 0;

    int i;/*from w w w  . j av a2  s.  c  om*/
    int max = 0;

    for (WorkRequest workRequest : enterprise.getWorkQueue().getWorkRequestList()) {
        if (workRequest.getLevel2().equals(ErrorUtil.BLOOD_OR_BLOOD_PRODUCT)) {
            if (workRequest.getLocation().equals(Location.EMERGENCY)) {
                timeofem = timeofem + 1;
            }
            if (workRequest.getLocation().equals(Location.LABORATORY)) {
                timeoflab = timeoflab + 1;
            }
            if (workRequest.getLocation().equals(Location.OR)) {
                timeofor = timeofor + 1;
            }
            if (workRequest.getLocation().equals(Location.OUTPATIEN)) {
                timeofoutpatient = timeofoutpatient + 1;
            }
            if (workRequest.getLocation().equals(Location.PHARMACY)) {
                timeofpha = timeofpha + 1;
            }
            if (workRequest.getLocation().equals(Location.WARD)) {
                timeofward = timeofward + 1;
            }

        }
    }

    int[] numbs;
    numbs = new int[6];
    numbs[0] = timeofem;
    numbs[1] = timeoflab;
    numbs[2] = timeofor;
    numbs[3] = timeofoutpatient;
    numbs[4] = timeofpha;
    numbs[5] = timeofward;

    DefaultPieDataset dataset = new DefaultPieDataset();
    dataset.setValue(Location.EMERGENCY, timeofem);
    dataset.setValue(Location.LABORATORY, timeoflab);
    dataset.setValue(Location.OR, timeofor);
    dataset.setValue(Location.OUTPATIEN, timeofoutpatient);
    dataset.setValue(Location.PHARMACY, timeofpha);
    dataset.setValue(Location.WARD, timeofward);

    JFreeChart chart = ChartFactory.createPieChart(" Chart", dataset, true, true, true);

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

    ChartFrame chartFrame = new ChartFrame("Location of events", chart);
    chartFrame.setSize(450, 550);
    chartFrame.setVisible(true);

}

From source file:OfficeAdministrator.CreatePieChart.java

public void createCharts() throws Exception
//public static void main(String args[]) throws Exception
{

    int open = 0;
    int closed = 0;

    /* Create MySQL Database Connection */
    Statement st = DBConnector.getStatement();
    Date date = new Date(System.currentTimeMillis());
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    String query = "SELECT COUNT(CallStatus) FROM calls WHERE CallStatus='Open' and Date='" + sdf.format(date)
            + "'";
    ResultSet resultSet = st.executeQuery(query);
    DefaultPieDataset dataset = new DefaultPieDataset();
    if (resultSet.next()) {
        open = Integer.parseInt(resultSet.getString(1));
    }// www .  j  a v  a  2  s .  c  om

    query = "SELECT COUNT(CallStatus) FROM calls WHERE CallStatus='Closed' and Date='" + sdf.format(date) + "'";
    System.out.println(query);
    resultSet = st.executeQuery(query);

    if (resultSet.next()) {
        closed = Integer.parseInt(resultSet.getString(1));
    }
    dataset.setValue("Open", open);
    dataset.setValue("Closed", closed);

    JFreeChart chart = ChartFactory.createPieChart("Call Summary", // chart title           
            dataset, // data           
            true, // include legend          
            true, false);

    int width = 560; /* Width of the image */
    int height = 370; /* Height of the image */

    File pieChart = new File(
            "C:\\Users\\Rachna\\Documents\\NetBeansProjects\\OfficeAdministrator\\web\\images\\CallStatus_Chart.jpeg");
    // File pieChart = new File("/../web/images/CallStatus_Chart.jpeg");
    // File f = new File("OfficeAdministrator/web/images/CallStatus_Chart.jpeg");
    //System.out.println(f.getAbsolutePath());
    //File pieChart = new File(f.getAbsolutePath());

    ChartUtilities.saveChartAsJPEG(pieChart, chart, width, height);

    //Call details according to Department
    DefaultCategoryDataset dataset1 = new DefaultCategoryDataset();
    int accopen = 0, accclosed = 0, markopen = 0, markclosed = 0, seropen = 0, serclosed = 0, stopen = 0,
            stclosed = 0, diropen = 0, dirclosed = 0, foopen = 0, foclosed = 0;

    query = "SELECT COUNT(*) FROM calls WHERE TransferredTo='Accounts' and CallStatus='Closed' and Date='"
            + sdf.format(date) + "'";
    System.out.println(query);
    resultSet = st.executeQuery(query);
    if (resultSet.next())
        accclosed = Integer.parseInt(resultSet.getString(1));

    query = "SELECT COUNT(*) FROM calls WHERE TransferredTo='Accounts' and CallStatus='Open' and Date='"
            + sdf.format(date) + "'";
    System.out.println(query);
    resultSet = st.executeQuery(query);
    if (resultSet.next())
        accopen = Integer.parseInt(resultSet.getString(1));

    query = "SELECT COUNT(*) FROM calls WHERE TransferredTo='Marketing' and CallStatus='Closed' and Date='"
            + sdf.format(date) + "'";
    System.out.println(query);
    resultSet = st.executeQuery(query);
    if (resultSet.next())
        markclosed = Integer.parseInt(resultSet.getString(1));

    query = "SELECT COUNT(*) FROM calls WHERE TransferredTo='Marketing' and CallStatus='Open' and Date='"
            + sdf.format(date) + "'";
    System.out.println(query);
    resultSet = st.executeQuery(query);
    if (resultSet.next())
        markopen = Integer.parseInt(resultSet.getString(1));

    query = "SELECT COUNT(*) FROM calls WHERE TransferredTo='Service' and CallStatus='Closed' and Date='"
            + sdf.format(date) + "'";
    System.out.println(query);
    resultSet = st.executeQuery(query);
    if (resultSet.next())
        serclosed = Integer.parseInt(resultSet.getString(1));

    query = "SELECT COUNT(*) FROM calls WHERE TransferredTo='Service' and CallStatus='Open' and Date='"
            + sdf.format(date) + "'";
    System.out.println(query);
    resultSet = st.executeQuery(query);
    if (resultSet.next())
        seropen = Integer.parseInt(resultSet.getString(1));

    query = "SELECT COUNT(*) FROM calls WHERE TransferredTo='Stores' and CallStatus='Closed' and Date='"
            + sdf.format(date) + "'";
    System.out.println(query);
    resultSet = st.executeQuery(query);
    if (resultSet.next())
        stclosed = Integer.parseInt(resultSet.getString(1));

    query = "SELECT COUNT(*) FROM calls WHERE TransferredTo='Stores' and CallStatus='Open' and Date='"
            + sdf.format(date) + "'";
    System.out.println(query);
    resultSet = st.executeQuery(query);
    if (resultSet.next())
        stopen = Integer.parseInt(resultSet.getString(1));

    query = "SELECT COUNT(*) FROM calls WHERE TransferredTo='Director' and CallStatus='Closed' and Date='"
            + sdf.format(date) + "'";
    System.out.println(query);
    resultSet = st.executeQuery(query);
    if (resultSet.next())
        dirclosed = Integer.parseInt(resultSet.getString(1));

    query = "SELECT COUNT(*) FROM calls WHERE TransferredTo='Director' and CallStatus='Open' and Date='"
            + sdf.format(date) + "'";
    System.out.println(query);
    resultSet = st.executeQuery(query);
    if (resultSet.next())
        diropen = Integer.parseInt(resultSet.getString(1));

    query = "SELECT COUNT(*) FROM calls WHERE TransferredTo='None' and CallStatus='Closed' and Date='"
            + sdf.format(date) + "'";
    System.out.println(query);
    resultSet = st.executeQuery(query);
    if (resultSet.next())
        foclosed = Integer.parseInt(resultSet.getString(1));

    query = "SELECT COUNT(*) FROM calls WHERE TransferredTo='None' and CallStatus='Open' and Date='"
            + sdf.format(date) + "'";
    System.out.println(query);
    resultSet = st.executeQuery(query);
    if (resultSet.next())
        foopen = Integer.parseInt(resultSet.getString(1));

    dataset1.setValue(accopen, "Open", "Accounts");
    dataset1.setValue(accclosed, "Closed", "Accounts");
    dataset1.setValue(diropen, "Open", "Director");
    dataset1.setValue(dirclosed, "Closed", "Director");
    dataset1.setValue(foopen, "Open", "Front Office");
    dataset1.setValue(foclosed, "Closed", "Front Office");
    dataset1.setValue(markopen, "Open", "Marketing");
    dataset1.setValue(markclosed, "Closed", "Marketing");
    dataset1.setValue(seropen, "Open", "Service");
    dataset1.setValue(serclosed, "Closed", "Service");
    dataset1.setValue(stopen, "Open", "Stores");
    dataset1.setValue(stclosed, "Closed", "Stores");

    JFreeChart chart1 = ChartFactory.createBarChart("Call Summary", // chart title 
            "Department", "No of Calls", dataset1, // data
            PlotOrientation.VERTICAL, true, // include legend          
            true, false);

    File callChart = new File(
            "C:\\Users\\Rachna\\Documents\\NetBeansProjects\\OfficeAdministrator\\web\\images\\CallSum_Chart.jpeg");
    ChartUtilities.saveChartAsJPEG(callChart, chart1, width, height);
}

From source file:org.lsug.quota.web.internal.portlet.ServerQuotaWebPortlet.java

@Override
public void serveResource(ResourceRequest resourceRequest, ResourceResponse resourceResponse)
        throws IOException, PortletException {

    String type = ParamUtil.getString(resourceRequest, "type", "currentSize");

    StringBundler sb = new StringBundler(5);

    JFreeChart jFreeChart = null;// w  ww  .j  a  v  a 2 s  . c om

    if (type.equals("currentSize")) {
        long classNameId = PortalUtil.getClassNameId(Company.class.getName());

        String orderByCol = "quotaUsed";
        String orderByType = "desc";

        OrderByComparator<Quota> orderByComparator = QuotaUtil.getQuotaOrderByComparator(orderByCol,
                orderByType);
        DefaultPieDataset pieDataset = new DefaultPieDataset();

        try {
            List<Quota> listCompanyQuota = _quotaLocalService.getQuotaByClassNameId(classNameId,
                    QueryUtil.ALL_POS, QueryUtil.ALL_POS, orderByComparator);

            for (Quota quota : listCompanyQuota) {
                if (quota.isEnabled()) {
                    pieDataset.setValue(_companyLocalService.getCompany(quota.getClassPK()).getWebId(),
                            quota.getQuotaUsed());
                }
            }
        } catch (Exception e) {
            LOGGER.error(e);
            throw new PortletException(e);
        }

        ResourceBundle resourceBundle = ResourceBundleUtil.getBundle("content.Language",
                resourceRequest.getLocale(), getClass());

        sb.append(LanguageUtil.get(resourceBundle, "server-current-used-size-diagram-title"));

        jFreeChart = getCurrentSizeJFreeChart(sb.toString(), pieDataset);
    }

    OutputStream outputStream = null;

    resourceResponse.setContentType(ContentTypes.IMAGE_PNG);

    try {
        outputStream = resourceResponse.getPortletOutputStream();
        ChartUtilities.writeChartAsPNG(outputStream, jFreeChart, 400, 200);
    } finally {
        if (outputStream != null) {
            outputStream.close();
        }
    }
}

From source file:org.deegree.graphics.charts.ChartsBuilder.java

/**
 * Create a pie 2D/3D Pie Chart//from   ww w .ja v  a  2s. c o m
 *
 * @param title
 *
 * @param keyedValues
 *            The key/value pairs used for the pie chart
 * @param width
 *            of the output image
 * @param height
 *            height of the output image
 * @param is3D
 *            is a 3D Chart
 * @param legend
 *            for the output chart
 * @param tooltips
 *            for the output chart
 * @param lblType
 *            Possible types are <i>Key</i>, <i>Value</i>, <i>KeyValue</i>
 * @param imageType
 *            of the output image
 * @param chartConfigs
 *            to configure the output chart, or null to use the default ChartConfig
 * @return BufferedImage representing the generated chart
 */
public BufferedImage createPieChart(String title, QueuedMap<String, Double> keyedValues, int width, int height,
        boolean is3D, boolean legend, boolean tooltips, String lblType, String imageType,
        ChartConfig chartConfigs) {

    DefaultPieDataset dataset = new DefaultPieDataset();
    Iterator<String> it = keyedValues.keySet().iterator();
    while (it.hasNext()) {
        String key = it.next();
        if ("KeyValue".equals(lblType)) {
            dataset.setValue(StringTools.concat(20, key, " ", keyedValues.get(key)), keyedValues.get(key));
        } else if ("Value".equals(lblType)) {
            dataset.setValue(keyedValues.get(key), keyedValues.get(key));
        } else {
            dataset.setValue(key, keyedValues.get(key));
        }
    }
    JFreeChart chart = null;
    if (is3D) {
        chart = ChartFactory.createPieChart3D(title, dataset, legend, tooltips, false);
    } else {
        chart = ChartFactory.createPieChart(title, dataset, legend, tooltips, true);
    }
    if (chartConfigs == null) {
        chartConfigs = this.chartConfigs;
    }
    return createBufferedImage(configPieChart(chart, chartConfigs), width, height, imageType);
}