List of usage examples for org.jfree.chart JFreeChart getCategoryPlot
public CategoryPlot getCategoryPlot()
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); }