Example usage for org.jfree.chart JFreeChart getCategoryPlot

List of usage examples for org.jfree.chart JFreeChart getCategoryPlot

Introduction

In this page you can find the example usage for org.jfree.chart JFreeChart getCategoryPlot.

Prototype

public CategoryPlot getCategoryPlot() 

Source Link

Document

Returns the plot cast as a CategoryPlot .

Usage

From source file:org.squale.squaleweb.util.graph.AuditTimeMaker.java

/**
 * @return le diagramme JFreeChart//ww  w .j  a va 2 s.c  om
 */
public JFreeChart getChart() {
    JFreeChart retChart = super.getChart();
    if (null == retChart) {
        // Appel  la factory pour crer le diagramme
        retChart = ChartFactory.createStackedBarChart(mTitle, mXLabel, mYLabel, mDataSet,
                PlotOrientation.VERTICAL, true, false, false);
        CategoryPlot plot = retChart.getCategoryPlot();
        ValueAxis xAxis = plot.getRangeAxis();
        plot.setRangeAxisLocation(AxisLocation.BOTTOM_OR_LEFT);
        // Le renderer pour avoir un diagramme en baton avec empilement
        mRenderer = (StackedBarRenderer) plot.getRenderer();
        // Appel de la mthode grant les couleurs du graphe
        // met le fond blanc
        retChart.setBackgroundPaint(Color.WHITE);
    }
    return retChart;
}

From source file:UserInterface.DoctorRole.ViewPatientReport.java

public void Graph() {
    dataset = new DefaultCategoryDataset();
    if (!(patient.getTestDir().getTestdir().isEmpty())) {

        for (Test vs : patient.getTestDir().getTestdir()) {

            dataset.addValue(Float.parseFloat(vs.getBloodPressure()), "Blood Pressure", vs.getTimestamp());
            dataset.addValue(Float.parseFloat(vs.getBloodPlatlets()), "Blood Platelets", vs.getTimestamp());
            dataset.addValue(Float.parseFloat(vs.getHemoglobinLevel()), "Hemoglobin Level", vs.getTimestamp());
            //dataset.addValue(vs.getWeight(), "Weight", vs.getTimestamp());

        }//  w  w  w  . j av  a  2s .co  m

        JFreeChart chartFactory = ChartFactory.createBarChart3D("VitalSign", "Time", "VitalSign", dataset,
                PlotOrientation.VERTICAL, true, true, false);

        BarRenderer renderer = null;
        CategoryPlot plot = chartFactory.getCategoryPlot();
        renderer = new BarRenderer();
        ChartFrame frame = new ChartFrame("Bar Chart for VitalSign", chartFactory);
        frame.setVisible(true);
        frame.setSize(700, 320);
    } else {
        JOptionPane.showMessageDialog(this, "No Vital Signs To Display On Graph!!!");
    }
}

From source file:UserInterface.DonorRole.DonorRecordsJPanel.java

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
    int selectedRow = donorHormoneLevelsJTbl.getSelectedRow();
    if (selectedRow >= 0) {
        double lHLevel = 0.0;
        double FSH = 0.0;
        double hcg = 0.0;
        for (Employee donor : organization.getEmployeeDirectory().getEmployeeList()) {
            if (donor.getName().equalsIgnoreCase(userAccount.getEmployee().getName())) {
                for (HormonalRecords hr : donor.getHormonalRecordsHistory().getHormonalRecordsList()) {
                    //hr = (HormonalRecords)donorHormoneLevelsJTbl.getValueAt(selectedRow,0);

                    lHLevel = hr.getLeutinizingHormoneLevels();
                    FSH = hr.getFollicleStimulatingHormoneLevels();
                    hcg = hr.gethCGLevels();

                }//from   w  ww .java 2s . c o  m
                DefaultCategoryDataset data = new DefaultCategoryDataset();
                data.setValue(lHLevel, "Value", "LH level");
                data.setValue(FSH, "Value", "FSH level");
                data.setValue(hcg, "Value", "HCG level");

                JFreeChart chart = ChartFactory.createBarChart3D("Hormonal Level Stats", "Hormonal Parameters",
                        "Values", data);
                chart.setBackgroundPaint(Color.WHITE);
                chart.getTitle().setPaint(Color.BLUE);
                CategoryPlot p = chart.getCategoryPlot();
                p.setRangeGridlinePaint(Color.RED);
                ChartFrame frame = new ChartFrame("Bar Chart for Donor", chart);
                frame.setVisible(true);
                frame.setSize(450, 350);
            }
        }

    }

    else {
        JOptionPane.showMessageDialog(null, "Please select a row from the table", "Warning",
                JOptionPane.WARNING_MESSAGE);
    }

}

From source file:Interface.FoodCollectionSupervisor.TypeOfFoodCitizens.java

private void btnCalculateActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnCalculateActionPerformed
    // TODO add your handling code here:
    Date toDate1 = jDateChooser1.getDate();
    Date toDate2 = jDateChooser2.getDate();
    if ((toDate1 == null) || (toDate2 == null)) {
        JOptionPane.showMessageDialog(null, "Invalid date..Kindly enter valid date.");
        return;/*from  ww  w . j a v  a  2  s  .c om*/
    }

    long fromDate = (jDateChooser1.getDate().getTime()) / (1000 * 60 * 60 * 24);
    long toDate = (jDateChooser2.getDate().getTime()) / (1000 * 60 * 60 * 24);
    int homeFoodType = 0;
    int cannedType = 0;
    int purchasedType = 0;

    for (WorkRequest request : organization.getWorkQueue().getWorkRequestList()) {

        long requestDate = (request.getRequestDate().getTime()) / (1000 * 60 * 60 * 24);
        Employee e = request.getSender().getEmployee();
        if (e instanceof CitizenEmployee) {
            if ((requestDate >= fromDate) && (requestDate <= toDate)) {

                if (!request.getStatus().equalsIgnoreCase("New Request")) {

                    if (((FoodCollectionWorkRequest) request).getFood().getFoodType()
                            .equalsIgnoreCase("Canned Food")) {
                        cannedType++;
                    } else if (((FoodCollectionWorkRequest) request).getFood().getFoodType()
                            .equalsIgnoreCase("Home made Food")) {
                        homeFoodType++;

                    } else if (((FoodCollectionWorkRequest) request).getFood().getFoodType()
                            .equalsIgnoreCase("Purchased Food")) {
                        purchasedType++;
                    }

                }
            }
            //                else{
            //                    
            //                    JOptionPane.showMessageDialog(null, "There are no records for this search criteria.");
            //                }
        }

    }

    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    dataset.setValue(cannedType, "Number of food collected", "Canned Food");
    dataset.setValue(purchasedType, "Number of food collected", "Purchased Food");
    dataset.setValue(homeFoodType, "Number of food collected", "Home made Food");

    JFreeChart chart = ChartFactory.createBarChart("Citizens-Different types of food collected",
            "Types of food", "Number of food collected", dataset, PlotOrientation.VERTICAL, false, true, false);
    CategoryPlot plot = chart.getCategoryPlot();
    plot.setRangeGridlinePaint(Color.BLUE);
    ChartFrame frame = new ChartFrame("Bar Chart for Types of food collected", chart);
    frame.setVisible(true);
    frame.setSize(450, 350);

}

From source file:userinterface.AdminRole.DataAnalysisJPanel.java

private void donorHealthBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_donorHealthBtnActionPerformed
    // TODO add your handling code here:
    int count = 0;
    int count1 = 0;

    for (Organization org : enterprise.getOrganizationDirectory().getOrganizationList()) {

        if (org instanceof NutritionistOrganization) {
            for (WorkRequest request : org.getWorkQueue().getWorkRequestList()) {
                count = count + 1;//  w w  w. j a  v  a 2s .com
            }
        }
        if (org instanceof LabOrganization) {
            for (WorkRequest request : org.getWorkQueue().getWorkRequestList()) {
                count1++;
            }
        }

    }

    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    dataset.setValue(count, "Number", "unfit");
    dataset.setValue(count1, "Number", "fit");

    JFreeChart chart = ChartFactory.createBarChart("Donors", "Donor", "Number", dataset,
            PlotOrientation.VERTICAL, false, true, false);
    CategoryPlot p = chart.getCategoryPlot();
    p.setRangeGridlinePaint(Color.black);

    ChartFrame frame = new ChartFrame("Donor Information", chart);

    frame.setVisible(true);
    frame.setSize(450, 500);

}

From source file:userinterface.AdminRole.DataAnalysisJPanel.java

private void donorGenderButtonActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_donorGenderButtonActionPerformed
    // TODO add your handling code here:
    int m = 0, f = 0;

    for (Organization org : enterprise.getOrganizationDirectory().getOrganizationList()) {
        if (org instanceof DonorOrganization) {
            for (Donor donor : org.getDonorDirectory().getDonorList()) {

                if (donor.getGender().equalsIgnoreCase("male")) {
                    m++;/*w  w  w .  j a  v a 2  s.  co  m*/
                }
                if (donor.getGender().equalsIgnoreCase("female")) {
                    f++;
                }
            }
        }
    }
    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    dataset.setValue(m, "Number", "Male");
    dataset.setValue(f, "Number", "Female");

    JFreeChart chart = ChartFactory.createBarChart("Donors", "Gender", "Number", dataset,
            PlotOrientation.VERTICAL, false, true, false);
    CategoryPlot p = chart.getCategoryPlot();
    p.setRangeGridlinePaint(Color.black);

    ChartFrame frame = new ChartFrame("Availability Bar Chart", chart);

    frame.setVisible(true);
    frame.setSize(450, 500);

    //       panel.removeAll();
    //        panel.add(frame, BorderLayout.CENTER);
    //        panel.validate();
}

From source file:app.view.panel.PanelHistogramme.java

/**
 * Cre le graphique//w  w w  . j  a v  a  2  s .  c  o  m
 *
 * @param dataset Echantillon de donnes
 * @return Graphique
 */
private JFreeChart createChart(CategoryDataset dataset) {
    final JFreeChart chart = ChartFactory.createBarChart3D("Sries de bac", // chart title
            "Bacs", // domain axis label
            "Nombre", // range axis label
            dataset, // data
            PlotOrientation.VERTICAL, // orientation
            true, // include legend
            true, // tooltips
            false // urls
    );

    final CategoryPlot plot = chart.getCategoryPlot();
    final CategoryAxis axis = plot.getDomainAxis();
    axis.setCategoryLabelPositions(CategoryLabelPositions.createUpRotationLabelPositions(Math.PI / 8.0));
    final BarRenderer3D renderer = (BarRenderer3D) plot.getRenderer();
    renderer.setDrawBarOutline(false);

    return chart;
}

From source file:com.crunchify.jsp.servlet.ChartServlet.java

public JFreeChart getChart() {

    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    dataset.addValue(25.0, "Series 1", "Category 1");
    dataset.addValue(34.0, "Series 1", "Category 2");
    dataset.addValue(19.0, "Series 2", "Category 1");
    dataset.addValue(29.0, "Series 2", "Category 2");
    dataset.addValue(41.0, "Series 3", "Category 1");
    dataset.addValue(33.0, "Series 3", "Category 2");

    JFreeChart chart = ChartFactory.createBarChart3D("3D Bar Chart Demo", // chart title
            "Category", // domain axis label
            "Value", // range axis label
            dataset, // data
            PlotOrientation.VERTICAL, // orientation
            true, // include legend
            true, // tooltips
            false // urls
    );/*ww w . j a  v  a 2 s .  c  o m*/

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

    CategoryItemRenderer renderer = plot.getRenderer();
    renderer.setItemLabelsVisible(true);
    BarRenderer r = (BarRenderer) renderer;
    r.setMaximumBarWidth(0.05);
    return chart;

}

From source file:org.kineticsystem.commons.data.demo.panels.AggregationChartPane.java

/**
 * Constructor.//  w ww . j  a va2 s .  c om
 * @param source This is the source list being modified ate the same time
 *     by many threads.
 */
public AggregationChartPane(ActiveList<RandomContact> source) {

    // Define aggregators.

    GroupAggregator[] aggregators = new GroupAggregator[] { new ContactsPerContinentAggr(),
            new AvgAgePerContinentAggr(), new MaxAgePerContinentAggr(), new MinAgePerContinentAggr() };

    // Aggregator selector.

    DefaultComboBoxModel groupComboModel = new DefaultComboBoxModel(aggregators);
    final JComboBox groupCombo = new JComboBox(groupComboModel);
    groupCombo.setSelectedIndex(1);
    groupCombo.setToolTipText("Select an aggregation function.");

    // Create the dataset.

    dataset = new DefaultCategoryDataset();
    List<Country> countries = RandomContactGenerator.getCountries();
    Set<String> continents = new TreeSet<String>();

    for (Country country : countries) {
        continents.add(country.getContinent());
    }

    for (String continent : continents) {
        dataset.setValue(0, continent, "");
    }

    // Define the aggregated list.

    groups = new GroupMapping<RandomContact>(source);
    groups.setAggregator(aggregators[0]);
    groups.getTarget().addActiveListListener(this);

    // Create the chart.

    JFreeChart chart = ChartFactory.createBarChart("", "Continent", groups.getAggregator().toString(), dataset,
            PlotOrientation.VERTICAL, true, // legend?
            true, // tooltips?
            false // URLs?
    );
    final ValueAxis axis = chart.getCategoryPlot().getRangeAxis();
    axis.setAutoRange(true);
    axis.setRange(0, 250);

    ChartPanel chartPanel = new ChartPanel(chart);

    // Create the selector.

    ActionListener groupComboListener = new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            JComboBox cb = (JComboBox) e.getSource();
            GroupAggregator aggr = (GroupAggregator) cb.getSelectedItem();
            groups.setAggregator(aggr);
            axis.setLabel(aggr.toString());
        }
    };
    groupCombo.addActionListener(groupComboListener);

    // Layout the GUI.

    Cell cell = new Cell();

    TetrisLayout groupTableLayout = new TetrisLayout(2, 1);
    groupTableLayout.setRowWeight(0, 0);
    groupTableLayout.setRowWeight(1, 100);

    setLayout(groupTableLayout);
    add(groupCombo, cell);
    add(chartPanel, cell);
}

From source file:Interface.FoodCollectionSupervisor.TypesOfFoodRestaurant.java

private void btnCalculateActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnCalculateActionPerformed
    // TODO add your handling code here:
    Date toDate1 = jDateChooser1.getDate();
    Date toDate2 = jDateChooser2.getDate();
    if ((toDate1 == null) || (toDate2 == null)) {
        JOptionPane.showMessageDialog(null, "Invalid date..Kindly enter valid date.");
        return;//  ww  w  .ja  va  2s .com
    }
    long fromDate = (jDateChooser1.getDate().getTime()) / (1000 * 60 * 60 * 24);
    long toDate = (jDateChooser2.getDate().getTime()) / (1000 * 60 * 60 * 24);
    int homeFoodType = 0;
    int cannedType = 0;
    int purchasedType = 0;

    for (WorkRequest request : organization.getWorkQueue().getWorkRequestList()) {

        long requestDate = (request.getRequestDate().getTime()) / (1000 * 60 * 60 * 24);
        Employee e = request.getSender().getEmployee();
        if (e instanceof RestaurantEmployee) {
            if ((requestDate >= fromDate) && (requestDate <= toDate)) {

                if (!request.getStatus().equalsIgnoreCase("New Request")) {

                    if (((FoodCollectionWorkRequest) request).getFood().getFoodType()
                            .equalsIgnoreCase("Canned Food")) {
                        cannedType++;
                    } else if (((FoodCollectionWorkRequest) request).getFood().getFoodType()
                            .equalsIgnoreCase("Home made Food")) {
                        homeFoodType++;

                    } else if (((FoodCollectionWorkRequest) request).getFood().getFoodType()
                            .equalsIgnoreCase("Purchased Food")) {
                        purchasedType++;
                    }

                }
            }
            //                else{
            //                    
            //                    JOptionPane.showMessageDialog(null, "There are no records for this search criteria.");
            //                }
        }

    }

    DefaultCategoryDataset dataset = new DefaultCategoryDataset();
    dataset.setValue(cannedType, "Number of food collected", "Canned Food");
    dataset.setValue(purchasedType, "Number of food collected", "Purchased Food");
    dataset.setValue(homeFoodType, "Number of food collected", "Home made Food");

    JFreeChart chart = ChartFactory.createBarChart("Restaurants-Different types of food collected",
            "Types of food", "Number of food collected", dataset, PlotOrientation.VERTICAL, false, true, false);
    CategoryPlot plot = chart.getCategoryPlot();
    plot.setRangeGridlinePaint(Color.CYAN);
    ChartFrame frame = new ChartFrame("Bar Chart for Types of food collected", chart);
    frame.setVisible(true);
    frame.setSize(450, 350);
}