List of usage examples for org.jfree.data.category DefaultCategoryDataset setValue
public void setValue(double value, Comparable rowKey, Comparable columnKey)
From source file:edu.ksu.cs.a4vm.bse.reporter.Reporter.java
private void jButton11ActionPerformed(java.awt.event.ActionEvent evt) { // TODO add your handling code here: // build a controller SwingController controller = new SwingController(); // Build a SwingViewFactory configured with the controller SwingViewBuilder factory = new SwingViewBuilder(controller); // Use the factory to build a JPanel that is pre-configured //with a complete, active Viewer UI. JPanel viewerComponentPanel = factory.buildViewerPanel(); // add copy keyboard command ComponentKeyBinding.install(controller, viewerComponentPanel); // add interactive mouse link annotation support via callback controller.getDocumentViewController().setAnnotationCallback( new org.icepdf.ri.common.MyAnnotationCallback(controller.getDocumentViewController())); // Create a JFrame to display the panel in JFrame window = new JFrame("Using the Viewer Component"); window.getContentPane().add(viewerComponentPanel); window.pack();/*from ww w. j a v a2 s .co m*/ window.setVisible(true); String Path; JFileChooser fr = new JFileChooser(); FileSystemView fw = fr.getFileSystemView(); // System.out.println(fw.getDefaultDirectory()); Path = fw.getDefaultDirectory() + "/reporter.pdf"; try { br1 = new BufferedReader(new FileReader(f)); BufferedReader b1 = new BufferedReader(new FileReader(f)); } catch (FileNotFoundException ex) { } String line = ""; bull1 = new String[number_of_rows - 1][]; int k = 0; BufferedReader br3 = null; try { br3 = new BufferedReader(new FileReader(f)); } catch (FileNotFoundException ex) { } try { while ((line = br3.readLine()) != null) { // use comma as separator String Bull[] = line.split(","); if (k != 0) { System.out.println(Bull.length); bull1[k - 1] = new String[Bull.length]; for (int j = 0; j < Bull.length; j++) { bull1[k - 1][j] = Bull[j]; } } k++; } } catch (IOException ex) { } Document doc = new Document(); PdfWriter docWriter = null; DecimalFormat df = new DecimalFormat("0.00"); try { //special font sizes Font bfBold12 = new Font(Font.FontFamily.TIMES_ROMAN, 8, Font.BOLD, new BaseColor(0, 0, 0)); Font bf12 = new Font(Font.FontFamily.TIMES_ROMAN, 6); Font bfBold20 = new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD); //file path docWriter = PdfWriter.getInstance(doc, new FileOutputStream(Path)); //document header attributes doc.addAuthor("Shubh Chopra"); doc.addCreationDate(); doc.addProducer(); doc.addCreator("Shubh Chopra"); doc.addTitle("BES"); doc.setPageSize(PageSize.LETTER.rotate()); //open document doc.open(); //create a paragraph Paragraph paragraph = new Paragraph("BULL EVALUATION\n\n"); paragraph.setFont(bfBold20); paragraph.setAlignment(Element.ALIGN_CENTER); Image img = Image.getInstance("VETMED.png"); img.scaleToFit(300f, 150f); doc.add(paragraph); PdfPTable table1 = new PdfPTable(2); table1.setWidthPercentage(100); PdfPCell cell = new PdfPCell(img); cell.setBorder(PdfPCell.NO_BORDER); table1.addCell(cell); String temp1 = "\tOwner: " + bull1[1][62] + " " + bull1[1][63] + "\n\n\tRanch: " + bull1[1][64] + "\n\n\tAddress: " + bull1[1][55] + "\n\n\tCity: " + bull1[1][57] + "\n\n\tState: " + bull1[1][60] + "\tZip: " + bull1[1][61] + "\n\n\tPhone: " + bull1[1][59] + "\n\n"; table1.addCell(getCell(temp1, PdfPCell.ALIGN_LEFT)); doc.add(table1); if (dlm3.size() == 1) { String str; str = dlm3.get(0).toString(); String[] parts = str.split(":"); String part2 = parts[1]; System.out.println(part2); int row = Integer.parseInt(part2) - 1; String[][] temp = new String[25][6]; temp[0][0] = "Tag"; temp[0][1] = bull1[row][7]; temp[0][2] = "Comments"; temp[0][3] = ""; temp[0][4] = "Total Count"; temp[0][5] = ""; temp[1][0] = "Tatoo"; temp[1][1] = bull1[row][8]; temp[1][2] = "All Normal"; temp[1][3] = "Yes"; temp[2][0] = "RFID"; temp[2][1] = bull1[row][6]; temp[2][2] = "Eyes"; temp[2][3] = bull1[row][10]; temp[3][0] = "Lot#"; temp[3][1] = bull1[row][5]; temp[3][2] = "Feet"; temp[3][3] = bull1[row][12]; temp[4][0] = "Brand"; temp[4][1] = bull1[row][2]; temp[4][2] = "Legs"; temp[4][3] = bull1[row][14]; temp[5][0] = "Date of Birth"; temp[5][1] = bull1[row][4]; temp[5][2] = "Testicals"; temp[5][3] = bull1[row][16]; temp[6][0] = "Age"; temp[6][1] = bull1[row][0]; temp[6][2] = "Accessory Sex Glands"; temp[6][3] = bull1[row][18]; temp[7][0] = "Breed"; temp[7][1] = bull1[row][3]; temp[7][2] = "Inguinal"; temp[7][3] = bull1[row][20]; temp[8][0] = "Other"; temp[8][1] = bull1[row][9]; temp[8][2] = "Scrotal"; temp[8][3] = bull1[row][22]; temp[9][0] = "Clinic Info"; temp[9][1] = "xx"; temp[9][2] = "Epidydimides"; temp[9][3] = bull1[row][24]; temp[10][4] = "Measurements"; temp[10][5] = "xx"; temp[10][0] = "Clinic Name"; temp[10][1] = bull1[row][73]; temp[10][2] = "Penis"; temp[10][3] = bull1[row][26]; temp[11][4] = "Scrotal Cirumference"; temp[11][5] = bull1[row][54]; temp[11][0] = "Veterinarian Name"; temp[11][1] = bull1[row][74] + " " + bull1[row][75]; temp[11][2] = "Prepuce"; temp[11][3] = bull1[row][28]; temp[12][4] = "Body Condition"; temp[12][5] = bull1[row][47]; temp[12][0] = "Address"; temp[12][1] = bull1[row][66] + " " + bull1[row][67]; temp[12][2] = "Scrotum"; temp[12][3] = bull1[row][30]; temp[13][4] = "Pelvic X Measure"; temp[13][5] = bull1[row][52]; temp[13][0] = "City"; temp[13][1] = bull1[row][68]; temp[13][2] = "Sex Drive"; temp[13][3] = "xx"; temp[14][4] = "Pelvic Y Measure"; temp[14][5] = bull1[row][53]; temp[14][0] = "State"; temp[14][1] = bull1[row][71]; temp[14][2] = "Breeding seasons used"; temp[14][3] = bull1[row][40]; temp[15][4] = "Hip Hight"; temp[15][5] = bull1[row][50]; temp[15][0] = "Zip Code"; temp[15][1] = bull1[row][72]; temp[15][2] = "Performance last season"; temp[15][3] = bull1[row][38]; temp[16][4] = "Frame Score"; temp[16][5] = bull1[row][49]; temp[16][0] = "Email"; temp[16][1] = bull1[row][69]; temp[16][2] = "Single or Multi sire"; temp[16][3] = bull1[row][41]; temp[17][4] = "Other"; temp[17][5] = bull1[row][48]; temp[17][0] = "Phone"; temp[17][1] = bull1[row][70]; temp[17][2] = "Other"; temp[17][3] = bull1[row][39]; temp[18][4] = "Motility"; temp[18][5] = "xx"; temp[18][0] = "Classification"; temp[18][1] = bull1[row][35]; temp[18][2] = "Comments"; temp[18][3] = bull1[row][37]; temp[19][4] = "Individual Motility"; temp[19][5] = bull1[row][45]; temp[19][0] = "Comments"; temp[19][1] = bull1[row][36]; temp[19][2] = ""; temp[19][3] = ""; temp[20][4] = "Motility %"; temp[20][5] = bull1[row][46]; temp[20][0] = ""; temp[20][1] = ""; temp[20][2] = ""; temp[20][3] = ""; temp[21][4] = "Gross Motility"; temp[21][5] = bull1[row][44]; temp[21][0] = ""; temp[21][1] = ""; temp[21][2] = ""; temp[21][3] = ""; for (int i = 9; i <= 29; i += 2) { if (bull1[row][i].equals("FALSE")) { temp[1][4] = "No"; break; } } int i; int total = 0; for (i = 77; i < header.length && i < bull1[row].length; i++) { temp[i - 76][4] = header[i].split("_")[1]; temp[i - 76][5] = bull1[row][i]; total += Integer.parseInt(bull1[row][i]); } temp[0][5] = Integer.toString(total); for (int j = i; j <= 85; j++) { temp[j - 76][4] = ""; temp[j - 76][5] = ""; } PdfPTable table = new PdfPTable(6); PdfPCell cell11, cell12, cell13; cell11 = new PdfPCell(new Phrase("Bull Info", FontFactory.getFont(FontFactory.TIMES_ROMAN, 12))); cell11.setColspan(2); cell11.setHorizontalAlignment(Element.ALIGN_CENTER); cell11.setVerticalAlignment(Element.ALIGN_CENTER); table.addCell(cell11); cell12 = new PdfPCell( new Phrase("Physical Exam", FontFactory.getFont(FontFactory.TIMES_ROMAN, 12))); cell12.setColspan(2); cell12.setHorizontalAlignment(Element.ALIGN_CENTER); cell12.setVerticalAlignment(Element.ALIGN_CENTER); table.addCell(cell12); cell13 = new PdfPCell(new Phrase("Morphology", FontFactory.getFont(FontFactory.TIMES_ROMAN, 12))); cell13.setColspan(2); cell13.setHorizontalAlignment(Element.ALIGN_CENTER); cell13.setVerticalAlignment(Element.ALIGN_CENTER); table.addCell(cell13); for (int l = 0; l <= 21; l++) { for (int j = 0; j < 6; j++) { // System.out.println(l+" "+j); if (!temp[l][j].equals("xx") && temp[l][j] != null) { cell = new PdfPCell( new Phrase(temp[l][j], FontFactory.getFont(FontFactory.TIMES_ROMAN, 10))); cell.setBorder(PdfPCell.NO_BORDER); if ((l == 9 && j == 0) || (l == 13 && j == 2) || (l == 10 && j == 4) || (l == 18 && j == 4)) { cell = new PdfPCell( new Phrase(temp[l][j], FontFactory.getFont(FontFactory.TIMES_ROMAN, 12))); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_CENTER); cell.setColspan(2); } table.addCell(cell); } } } table.setWidthPercentage(90f); Reporter re; re = new Reporter(); doc.add(table); if (jCheckBox2.isSelected() || jCheckBox1.isSelected()) doc.newPage(); } else { //specify column widths int temp = dlm2.size(); float[] columnWidths = new float[temp]; for (int x = 0; x < columnWidths.length; x++) { columnWidths[x] = 2f; } //create PDF table with the given widths PdfPTable table = new PdfPTable(columnWidths); // set table width a percentage of the page width table.setWidthPercentage(90f); Reporter re; re = new Reporter(); re.insertCell(table, "Bull Info", Element.ALIGN_CENTER, 1, bfBold12); for (int i = 0; i < dlm2.size(); i++) { String[] parts = dlm2.get(i).toString().split(": "); String part2 = parts[1]; re.insertCell(table, newhead[Integer.parseInt(part2)], Element.ALIGN_CENTER, 1, bfBold12); } table.setHeaderRows(1); //insert an empty row //create section heading by cell merging //just some random data to fill for (int x = 0; x < dlm3.size(); x++) { String str = dlm3.get(x).toString(); //System.out.println(str); String[] parts = str.split(":"); String part2 = parts[1]; // System.out.println(part2); int row = Integer.parseInt(part2) - 1; re.insertCell(table, Bulls[row], Element.ALIGN_CENTER, 1, bf12); for (int i = 0; i < dlm2.getSize(); i++) { for (int j = 0; j < header.length && j < bull1[row].length; j++) { String str1 = dlm2.get(i).toString(); String[] p1 = str1.split(": "); String p2 = p1[0]; if (p2.equals(header[j])) { re.insertCell(table, bull1[row][j], Element.ALIGN_CENTER, 1, bf12); } } } // re.insertCell(table, bull1[x][7] , Element.ALIGN_CENTER, 1, bf12); } doc.add(table); } if (jCheckBox2.isSelected()) { DefaultCategoryDataset dataSet = new DefaultCategoryDataset(); for (int i = 0; i < dlm3.size(); i++) { String str = dlm3.get(i).toString(); System.out.println(str); String[] parts = str.split(":"); String part1 = parts[0]; String part2 = parts[1]; System.out.println(part2); int row = Integer.parseInt(part2) - 1; float total = (float) 0.0; for (int j = 77; j < header.length && j < bull1[row].length; j++) { if (bull1[row][j].equals("")) { continue; } else { total += Integer.parseInt(bull1[row][j]); } } System.out.println(total); for (int j = 77; j < header.length && j < bull1[row].length; j++) { if (!bull1[row][j].equals("")) { String[] Parts = header[j].split("_"); String Part2 = Parts[1]; dataSet.setValue((Integer.parseInt(bull1[row][j]) * 100) / total, Part2, part1); } else { dataSet.setValue(0, "Percent", header[j]); } } } JFreeChart chart = ChartFactory.createBarChart("Multi Bull Morphology Chart ", "Morphology", "Percent", dataSet, PlotOrientation.VERTICAL, true, true, false); if (dlm3.size() > 12) { doc.newPage(); } PdfContentByte contentByte = docWriter.getDirectContent(); PdfTemplate template = contentByte.createTemplate(325, 250); PdfGraphics2D graphics2d = new PdfGraphics2D(template, 325, 250); Rectangle2D rectangle2d = new Rectangle2D.Double(0, 0, 325, 250); chart.draw(graphics2d, rectangle2d); graphics2d.dispose(); contentByte.addTemplate(template, 0, 0); } if (jCheckBox1.isSelected()) { for (int i = 0; i < dlm3.size(); i++) { DefaultCategoryDataset dataSet = new DefaultCategoryDataset(); String str = dlm3.get(i).toString(); System.out.println(str); String[] parts = str.split(":"); String part1 = parts[0]; String part2 = parts[1]; System.out.println(part2); int row = Integer.parseInt(part2) - 1; float total = (float) 0.0; for (int j = 77; j < header.length && j < bull1[row].length; j++) { if (bull1[row][j].equals("")) { continue; } else { total += Integer.parseInt(bull1[row][j]); } } System.out.println(total); for (int j = 77; j < header.length && j < bull1[row].length; j++) { if (!bull1[row][j].equals("")) { String[] Parts = header[j].split("_"); String Part2 = Parts[1]; dataSet.setValue((Integer.parseInt(bull1[row][j]) * 100) / total, "Percent", Part2); } else { dataSet.setValue(0, "Percent", header[j]); } } JFreeChart chart = ChartFactory.createBarChart("Single Bull Morphology Chart " + part1, "Morphology", "Percent", dataSet, PlotOrientation.VERTICAL, false, true, false); if ((dlm3.size() > 12 && i == 0) || jCheckBox2.isSelected()) { doc.newPage(); } PdfContentByte contentByte = docWriter.getDirectContent(); PdfTemplate template = contentByte.createTemplate(325, 250); PdfGraphics2D graphics2d = new PdfGraphics2D(template, 325, 250); Rectangle2D rectangle2d = new Rectangle2D.Double(0, 0, 325, 250); chart.draw(graphics2d, rectangle2d); graphics2d.dispose(); contentByte.addTemplate(template, 0, 0); doc.newPage(); } } } catch (DocumentException dex) { dex.printStackTrace(); } catch (FileNotFoundException ex) { Logger.getLogger(ReporterArchive.class.getName()).log(Level.SEVERE, null, ex); } catch (IOException ex) { Logger.getLogger(ReporterArchive.class.getName()).log(Level.SEVERE, null, ex); } finally { if (doc != null) { //close the document doc.close(); } if (docWriter != null) { //close the writer docWriter.close(); } } controller.openDocument(Path); }
From source file:edu.ksu.cs.a4vm.bse.reporter.Reporter.java
private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) { JFileChooser chooser = new JFileChooser(); int option = chooser.showSaveDialog(null); if (option == JFileChooser.APPROVE_OPTION) { if (chooser.getSelectedFile() != null) { File3 = chooser.getSelectedFile().getAbsolutePath(); }//from ww w . j av a 2 s . co m try { br1 = new BufferedReader(new FileReader(f)); BufferedReader b1 = new BufferedReader(new FileReader(f)); } catch (FileNotFoundException ex) { } String line = ""; bull1 = new String[number_of_rows - 1][]; int k = 0; BufferedReader br3 = null; try { br3 = new BufferedReader(new FileReader(f)); } catch (FileNotFoundException ex) { } try { while ((line = br3.readLine()) != null) { // use comma as separator String Bull[] = line.split(","); if (k != 0) { System.out.println(Bull.length); bull1[k - 1] = new String[Bull.length]; for (int j = 0; j < Bull.length; j++) { bull1[k - 1][j] = Bull[j]; } } k++; } } catch (IOException ex) { } Document doc = new Document(); PdfWriter docWriter = null; DecimalFormat df = new DecimalFormat("0.00"); try { //special font sizes Font bfBold12 = new Font(Font.FontFamily.TIMES_ROMAN, 8, Font.BOLD, new BaseColor(0, 0, 0)); Font bf12 = new Font(Font.FontFamily.TIMES_ROMAN, 6); Font bfBold20 = new Font(Font.FontFamily.TIMES_ROMAN, 12, Font.BOLD); Font bfBold25 = new Font(Font.FontFamily.TIMES_ROMAN, 15, Font.BOLD); //file path docWriter = PdfWriter.getInstance(doc, new FileOutputStream(File3)); //document header attributes doc.addAuthor("Shubh Chopra"); doc.addCreationDate(); doc.addProducer(); doc.addCreator("Shubh Chopra"); doc.addTitle("BES"); doc.setPageSize(PageSize.LETTER.rotate()); //open document doc.open(); //create a paragraph Paragraph paragraph = new Paragraph("BULL EVALUATION\n\n"); paragraph.setFont(bfBold25); paragraph.setAlignment(Element.ALIGN_CENTER); Image img = Image.getInstance("VETMED.png"); img.scaleToFit(300f, 150f); doc.add(paragraph); PdfPTable table1 = new PdfPTable(2); table1.setWidthPercentage(100); PdfPCell cell = new PdfPCell(img); cell.setBorder(PdfPCell.NO_BORDER); table1.addCell(cell); String temp1 = "\tOwner: " + bull1[1][62] + " " + bull1[1][63] + "\n\n\tRanch: " + bull1[1][64] + "\n\n\tAddress: " + bull1[1][55] + "\n\n\tCity: " + bull1[1][57] + "\n\n\tState: " + bull1[1][60] + "\tZip: " + bull1[1][61] + "\n\n\tPhone: " + bull1[1][59] + "\n\n"; table1.addCell(getCell(temp1, PdfPCell.ALIGN_LEFT)); doc.add(table1); if (dlm3.size() == 1) { String str; str = dlm3.get(0).toString(); String[] parts = str.split(":"); String part2 = parts[1]; System.out.println(part2); int row = Integer.parseInt(part2) - 1; String[][] temp = new String[25][6]; temp[0][0] = "Tag"; temp[0][1] = bull1[row][7]; temp[0][2] = "Comments"; temp[0][3] = ""; temp[0][4] = "Total Count"; temp[0][5] = ""; temp[1][0] = "Tatoo"; temp[1][1] = bull1[row][8]; temp[1][2] = "All Normal"; temp[1][3] = "Yes"; temp[2][0] = "RFID"; temp[2][1] = bull1[row][6]; temp[2][2] = "Eyes"; temp[2][3] = bull1[row][10]; temp[3][0] = "Lot#"; temp[3][1] = bull1[row][5]; temp[3][2] = "Feet"; temp[3][3] = bull1[row][12]; temp[4][0] = "Brand"; temp[4][1] = bull1[row][2]; temp[4][2] = "Legs"; temp[4][3] = bull1[row][14]; temp[5][0] = "Date of Birth"; temp[5][1] = bull1[row][4]; temp[5][2] = "Testicals"; temp[5][3] = bull1[row][16]; temp[6][0] = "Age"; temp[6][1] = bull1[row][0]; temp[6][2] = "Accessory Sex Glands"; temp[6][3] = bull1[row][18]; temp[7][0] = "Breed"; temp[7][1] = bull1[row][3]; temp[7][2] = "Inguinal"; temp[7][3] = bull1[row][20]; temp[8][0] = "Other"; temp[8][1] = bull1[row][9]; temp[8][2] = "Scrotal"; temp[8][3] = bull1[row][22]; temp[9][0] = "Clinic Info"; temp[9][1] = "xx"; temp[9][2] = "Epidydimides"; temp[9][3] = bull1[row][24]; temp[10][4] = "Measurements"; temp[10][5] = "xx"; temp[10][0] = "Clinic Name"; temp[10][1] = bull1[row][73]; temp[10][2] = "Penis"; temp[10][3] = bull1[row][26]; temp[11][4] = "Scrotal Cirumference"; temp[11][5] = bull1[row][54]; temp[11][0] = "Veterinarian Name"; temp[11][1] = bull1[row][74] + " " + bull1[row][74]; temp[11][2] = "Prepuce"; temp[11][3] = bull1[row][28]; temp[12][4] = "Body Condition"; temp[12][5] = bull1[row][47]; temp[12][0] = "Address"; temp[12][1] = bull1[row][66] + " " + bull1[row][67]; temp[12][2] = "Scrotum"; temp[12][3] = bull1[row][30]; temp[13][4] = "Pelvic X Measure"; temp[13][5] = bull1[row][52]; temp[13][0] = "City"; temp[13][1] = bull1[row][68]; temp[13][2] = "Sex Drive"; temp[13][3] = "xx"; temp[14][4] = "Pelvic Y Measure"; temp[14][5] = bull1[row][53]; temp[14][0] = "State"; temp[14][1] = bull1[row][71]; temp[14][2] = "Breeding seasons used"; temp[14][3] = bull1[row][40]; temp[15][4] = "Hip Hight"; temp[15][5] = bull1[row][50]; temp[15][0] = "Zip Code"; temp[15][1] = bull1[row][72]; temp[15][2] = "Performance last season"; temp[15][3] = bull1[row][38]; temp[16][4] = "Frame Score"; temp[16][5] = bull1[row][49]; temp[16][0] = "Email"; temp[16][1] = bull1[row][69]; temp[16][2] = "Single or Multi sire"; temp[16][3] = bull1[row][41]; temp[17][4] = "Other"; temp[17][5] = bull1[row][48]; temp[17][0] = "Phone"; temp[17][1] = bull1[row][70]; temp[17][2] = "Other"; temp[17][3] = bull1[row][39]; temp[18][4] = "Motility"; temp[18][5] = "xx"; temp[18][0] = "Classification"; temp[18][1] = bull1[row][35]; temp[18][2] = "Comments"; temp[18][3] = bull1[row][37]; temp[19][4] = "Individual Motility"; temp[19][5] = bull1[row][45]; temp[19][0] = "Comments"; temp[19][1] = bull1[row][36]; temp[19][2] = ""; temp[19][3] = ""; temp[20][4] = "Motility %"; temp[20][5] = bull1[row][46]; temp[20][0] = ""; temp[20][1] = ""; temp[20][2] = ""; temp[20][3] = ""; temp[21][4] = "Gross Motility"; temp[21][5] = bull1[row][44]; temp[21][0] = ""; temp[21][1] = ""; temp[21][2] = ""; temp[21][3] = ""; for (int i = 9; i <= 29; i += 2) { if (bull1[row][i].equals("FALSE")) { temp[1][4] = "No"; break; } } int i; int total = 0; for (i = 77; i < header.length && i < bull1[row].length; i++) { temp[i - 76][4] = header[i].split("_")[1]; temp[i - 76][5] = bull1[row][i]; total += Integer.parseInt(bull1[row][i]); } temp[0][5] = Integer.toString(total); for (int j = i; j <= 85; j++) { temp[j - 76][4] = ""; temp[j - 76][5] = ""; } PdfPTable table = new PdfPTable(6); PdfPCell cell11, cell12, cell13; cell11 = new PdfPCell( new Phrase("Bull Info", FontFactory.getFont(FontFactory.TIMES_ROMAN, 12))); cell11.setColspan(2); cell11.setHorizontalAlignment(Element.ALIGN_CENTER); cell11.setVerticalAlignment(Element.ALIGN_CENTER); table.addCell(cell11); cell12 = new PdfPCell( new Phrase("Physical Exam", FontFactory.getFont(FontFactory.TIMES_ROMAN, 12))); cell12.setColspan(2); cell12.setHorizontalAlignment(Element.ALIGN_CENTER); cell12.setVerticalAlignment(Element.ALIGN_CENTER); table.addCell(cell12); cell13 = new PdfPCell( new Phrase("Morphology", FontFactory.getFont(FontFactory.TIMES_ROMAN, 12))); cell13.setColspan(2); cell13.setHorizontalAlignment(Element.ALIGN_CENTER); cell13.setVerticalAlignment(Element.ALIGN_CENTER); table.addCell(cell13); for (int l = 0; l <= 21; l++) { for (int j = 0; j < 6; j++) { // System.out.println(l+" "+j); if (!temp[l][j].equals("xx") && temp[l][j] != null) { cell = new PdfPCell( new Phrase(temp[l][j], FontFactory.getFont(FontFactory.TIMES_ROMAN, 10))); cell.setBorder(PdfPCell.NO_BORDER); if ((l == 9 && j == 0) || (l == 13 && j == 2) || (l == 10 && j == 4) || (l == 18 && j == 4)) { cell = new PdfPCell(new Phrase(temp[l][j], FontFactory.getFont(FontFactory.TIMES_ROMAN, 12))); cell.setHorizontalAlignment(Element.ALIGN_CENTER); cell.setVerticalAlignment(Element.ALIGN_CENTER); cell.setColspan(2); } table.addCell(cell); } } } table.setWidthPercentage(90f); Reporter re; re = new Reporter(); doc.add(table); if (jCheckBox2.isSelected() || jCheckBox1.isSelected()) doc.newPage(); } else { //specify column widths int temp = dlm2.size(); float[] columnWidths = new float[temp]; for (int x = 0; x < columnWidths.length; x++) { columnWidths[x] = 2f; } //create PDF table with the given widths PdfPTable table = new PdfPTable(columnWidths); // set table width a percentage of the page width table.setWidthPercentage(90f); Reporter re; re = new Reporter(); re.insertCell(table, "Bull Info", Element.ALIGN_CENTER, 1, bfBold12); for (int i = 0; i < dlm2.size(); i++) { String[] parts = dlm2.get(i).toString().split(": "); String part2 = parts[1]; re.insertCell(table, newhead[Integer.parseInt(part2)], Element.ALIGN_CENTER, 1, bfBold12); } table.setHeaderRows(1); //insert an empty row //create section heading by cell merging //just some random data to fill for (int x = 0; x < dlm3.size(); x++) { String str = dlm3.get(x).toString(); //System.out.println(str); String[] parts = str.split(":"); String part2 = parts[1]; // System.out.println(part2); int row = Integer.parseInt(part2) - 1; re.insertCell(table, Bulls[row], Element.ALIGN_CENTER, 1, bf12); for (int i = 0; i < dlm2.getSize(); i++) { for (int j = 0; j < header.length && j < bull1[row].length; j++) { String str1 = dlm2.get(i).toString(); String[] p1 = str1.split(": "); String p2 = p1[0]; if (p2.equals(header[j])) { re.insertCell(table, bull1[row][j], Element.ALIGN_CENTER, 1, bf12); } } } // re.insertCell(table, bull1[x][7] , Element.ALIGN_CENTER, 1, bf12); } doc.add(table); } if (jCheckBox2.isSelected()) { DefaultCategoryDataset dataSet = new DefaultCategoryDataset(); for (int i = 0; i < dlm3.size(); i++) { String str = dlm3.get(i).toString(); System.out.println(str); String[] parts = str.split(":"); String part1 = parts[0]; String part2 = parts[1]; System.out.println(part2); int row = Integer.parseInt(part2) - 1; float total = (float) 0.0; for (int j = 77; j < header.length && j < bull1[row].length; j++) { if (bull1[row][j].equals("")) { continue; } else { total += Integer.parseInt(bull1[row][j]); } } System.out.println(total); for (int j = 77; j < header.length && j < bull1[row].length; j++) { if (!bull1[row][j].equals("")) { String[] Parts = header[j].split("_"); String Part2 = Parts[1]; dataSet.setValue((Integer.parseInt(bull1[row][j]) * 100) / total, Part2, part1); } else { dataSet.setValue(0, "Percent", header[j]); } } } JFreeChart chart = ChartFactory.createBarChart("Multi Bull Morphology Chart ", "Morphology", "Percent", dataSet, PlotOrientation.VERTICAL, true, true, false); if (dlm3.size() > 12) { doc.newPage(); } PdfContentByte contentByte = docWriter.getDirectContent(); PdfTemplate template = contentByte.createTemplate(325, 250); PdfGraphics2D graphics2d = new PdfGraphics2D(template, 325, 250); Rectangle2D rectangle2d = new Rectangle2D.Double(0, 0, 325, 250); chart.draw(graphics2d, rectangle2d); graphics2d.dispose(); contentByte.addTemplate(template, 0, 0); } if (jCheckBox1.isSelected()) { for (int i = 0; i < dlm3.size(); i++) { DefaultCategoryDataset dataSet = new DefaultCategoryDataset(); String str = dlm3.get(i).toString(); System.out.println(str); String[] parts = str.split(":"); String part1 = parts[0]; String part2 = parts[1]; System.out.println(part2); int row = Integer.parseInt(part2) - 1; float total = (float) 0.0; for (int j = 77; j < header.length && j < bull1[row].length; j++) { if (bull1[row][j].equals("")) { continue; } else { total += Integer.parseInt(bull1[row][j]); } } System.out.println(total); for (int j = 77; j < header.length && j < bull1[row].length; j++) { if (!bull1[row][j].equals("")) { String[] Parts = header[j].split("_"); String Part2 = Parts[1]; dataSet.setValue((Integer.parseInt(bull1[row][j]) * 100) / total, "Percent", Part2); } else { dataSet.setValue(0, "Percent", header[j]); } } JFreeChart chart = ChartFactory.createBarChart("Single Bull Morphology Chart " + part1, "Morphology", "Percent", dataSet, PlotOrientation.VERTICAL, false, true, false); if ((dlm3.size() > 12 && i == 0) || jCheckBox2.isSelected()) { doc.newPage(); } PdfContentByte contentByte = docWriter.getDirectContent(); PdfTemplate template = contentByte.createTemplate(325, 250); PdfGraphics2D graphics2d = new PdfGraphics2D(template, 325, 250); Rectangle2D rectangle2d = new Rectangle2D.Double(0, 0, 325, 250); chart.draw(graphics2d, rectangle2d); graphics2d.dispose(); contentByte.addTemplate(template, 0, 0); doc.newPage(); } } } catch (DocumentException dex) { dex.printStackTrace(); } catch (FileNotFoundException ex) { Logger.getLogger(ReporterArchive.class.getName()).log(Level.SEVERE, null, ex); } catch (IOException ex) { Logger.getLogger(ReporterArchive.class.getName()).log(Level.SEVERE, null, ex); } finally { if (doc != null) { //close the document doc.close(); } if (docWriter != null) { //close the writer docWriter.close(); } } } // TODO add your handling code here: }
From source file:DAO.DataAccessObject.java
/** * Gibt ein Diagramm zur bestellten Artikelmenge zurck. * @return BarChart/*from w w w. j a v a 2 s . c o m*/ */ public JFreeChart gibChartArtikelMenge() { //Charts und Datasets. JFreeChart barChart; DefaultCategoryDataset dataset; HashMap<String, Integer> artikelMenge = null; String name = ""; dataset = new DefaultCategoryDataset(); artikelMenge = this.gibVerkauftProArtikel(); Iterator<Map.Entry<String, Integer>> i = artikelMenge.entrySet().iterator(); while (i.hasNext()) { Map.Entry entr = i.next(); String artikel = (String) entr.getKey(); Integer mng = (Integer) entr.getValue(); dataset.setValue(mng, "Menge (Stck)", artikel); } //Diagramm erstellen. barChart = ChartFactory.createStackedBarChart("Verkaufsmenge " + "pro Artikel (Gesamt)", "Artikel", "Menge (Stck)", dataset, PlotOrientation.VERTICAL, true, true, true); return barChart; }
From source file:DAO.DataAccessObject.java
/** * Gibt ein Balkendiagramm fr Umsatz pro Artikel. * @return BarChart/* w w w . j a v a2 s .c o m*/ */ public JFreeChart gibChartArtikelAbsatz() { //Charts und Datasets. JFreeChart barChart; DefaultCategoryDataset dataset; HashMap<String, Double> artikelMenge = null; String name = ""; dataset = new DefaultCategoryDataset(); //Hole Daten aus DB artikelMenge = this.gibUmsatzProArtikel(); //Iterator Iterator<Map.Entry<String, Double>> i = artikelMenge.entrySet().iterator(); //Iteriere ber alle Eintrge while (i.hasNext()) { Map.Entry entr = i.next(); String artikel = (String) entr.getKey(); Double umsatz = (Double) entr.getValue(); dataset.setValue(umsatz, "Artikel Umsatz in ", artikel); } //Diagramm erstellen. barChart = ChartFactory.createStackedBarChart("Umsatz pro Artikel " + "(Gesamt)", "Artikel", "Umsatz in ", dataset, PlotOrientation.VERTICAL, true, true, true); return barChart; }
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)); }/*from w ww . j av a2 s . c o m*/ 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:skoa.helpers.Graficos.java
private DefaultCategoryDataset obtenerSerieBarrasDual(int col) { DefaultCategoryDataset dataset = new DefaultCategoryDataset(); File archivo = new File(ruta + "diferenciaAplicada.txt"); FileReader fr = null;//from ww w .j ava 2 s. com BufferedReader linea = null; String line; try { fr = new FileReader(archivo); linea = new BufferedReader(fr); //Se crea para leer las lineas int d = 0, m = 0, a = 0, a1 = 0, m1 = 0, d1 = 0, j; String aux; while ((line = linea.readLine()) != null) { //Lectura del fichero int i = line.indexOf("\t"); String f = line.substring(0, i); String valor = line.substring(i + 1); //Obtencion del dia, mes y a;o de la fecha. j = f.indexOf("-"); aux = f.substring(0, j); a = Integer.parseInt(aux); f = f.substring(j + 1); j = f.indexOf("-"); aux = f.substring(0, j); m = Integer.parseInt(aux); f = f.substring(j + 1); j = f.indexOf(" "); aux = f.substring(0, j); d = Integer.parseInt(aux); //Obtencion de la hora de la fecha. f = f.substring(j + 1); if (fechaInicial.contentEquals("")) fechaInicial = d + "/" + m + "/" + a + " " + f; //Variable para la grfica fechaFinal = d + "/" + m + "/" + a + " " + f; j = f.indexOf(":"); if (a1 == 0 & m1 == 0 & d1 == 0) { //Inicializacin: Primera fecha. a1 = a; m1 = m; d1 = d; } else { if (a1 != a) { a1 = a; if (m1 != m) m1 = m; if (d1 != d) d1 = d; } else if (m1 != m) { m1 = m; if (d1 != d) d1 = d; } else if (d1 != d) d1 = d; } String sa = "", sv = ""; String fecha = "" + d1 + "-" + m1 + " " + f; Double ev; if (col == 1) { //Se cogen los valores de la primera columna int p1 = valor.indexOf("\t"); sa = valor.substring(0, p1); int pu = sa.indexOf(" "); sv = sa.substring(0, pu - 1); ev = Double.parseDouble(sv); //Valor a guardar dataset.setValue(ev, nombresDGs.elementAt(0), fecha); dataset.setValue(null, "vacia", fecha); //Le ponemos un nombre cualquiera, xq no se ver } else { //Se cogen los valores de la segunda columna int p1 = valor.indexOf("\t"); sa = valor.substring(p1 + 1); int pu = sa.indexOf(" "); sv = sa.substring(0, pu - 1); ev = Double.parseDouble(sv); //Valor a guardar dataset.setValue(null, "vacia", fecha); dataset.setValue(ev, nombresDGs.elementAt(1), fecha); } } //fin while leer lineas } catch (Exception e) { e.printStackTrace(); } finally { try { if (null != fr) fr.close(); //Se cierra si todo va bien. } catch (Exception e2) { //Sino salta una excepcion. e2.printStackTrace(); } } return dataset; }
From source file:view.QuestionLab.java
private void formWindowClosing(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_formWindowClosing int count1 = 0; int count2 = 0; int count3 = 0; int count4 = 0; int count5 = 0; int count6 = 0; int count7 = 0; int count8 = 0; int count9 = 0; int count10 = 0; int count11 = 0; int count12 = 0; int count13 = 0; int count14 = 0; int count15 = 0; int count16 = 0; int count17 = 0; DefaultCategoryDataset dataset = null; for (int is : answerMap.keySet()) { if (newMap.containsKey(is) && Objects.equals(answerMap.get(is), newMap.get(is))) { dataset = new DefaultCategoryDataset(); anxCount++;//w w w . ja va 2 s . com int myKey = is; if (myKey < 7) { count1++; int a1 = (count1 * 100) / 6; System.out.println("Collection Framework Generics :" + a1); cat1 = a1; //System.out.println("Collection Framework Generics :" + a1); dataset.setValue(a1, "gfdg", "Collection Framework Generics"); } else if (myKey < 8) { count2++; int a2 = (count2 * 100) / 1; System.out.println("count 2 :" + a2); cat2 = a2; dataset.setValue(a2, "gfdg", "Date Number Currency"); } else if (myKey < 12) { count3++; int a3 = (count3 * 100) / 3; System.out.println("count 3 :" + a3); cat3 = a3; dataset.setValue(a3, "gfdg", "Development"); } else if (myKey < 17) { count4++; int a4 = (count4 * 100) / 5; System.out.println("count 4 :" + a4); cat4 = a4; dataset.setValue(a4, "gfdg", "Exception Assertion"); } else if (myKey < 23) { count5++; int a5 = (count5 * 100) / 6; System.out.println("count 5 :" + a5); cat5 = a5; dataset.setValue(a5, "gfdg", "File IO , Serialization"); } else if (myKey < 24) { count6++; int a6 = (count6 * 100) / 1; System.out.println("count 6 :" + a6); cat6 = a6; dataset.setValue(a6, "gfdg", "Flow Control"); } else if (myKey < 27) { count7++; int a7 = (count7 * 100) / 3; System.out.println("count 7 :" + a7); cat7 = a7; dataset.setValue(a7, "gfdg", "Formatting Tokenizing"); } else if (myKey < 29) { count8++; int a8 = (count8 * 100) / 2; System.out.println("count 8 :" + a8); cat8 = a8; dataset.setValue(a8, "gfdg", "Garbage Collector"); } else if (myKey < 30) { count9++; int a9 = (count9 * 100) / 1; System.out.println("count 9 :" + a9); cat9 = a9; dataset.setValue(a9, "gfdg", "Inner Classes"); } else if (myKey < 34) { count10++; int a10 = (count10 * 100) / 4; System.out.println("count 10 :" + a10); cat10 = a10; dataset.setValue(a10, "gfdg", "Interface Var-Args Enum"); } else if (myKey < 35) { count11++; int a11 = (count11 * 100) / 1; System.out.println("count 11 :" + a11); cat11 = a11; dataset.setValue(a11, "gfdg", "Java Fundamentals, Primitive Data Types Arrays"); } else if (myKey < 38) { count12++; int a12 = (count12 * 100) / 3; System.out.println("count 12 :" + a12); cat12 = a12; dataset.setValue(a12, "gfdg", "Modifiers Access,Non Access"); } else if (myKey < 50) { count13++; int a13 = (count13 * 100) / 12; System.out.println("count 13 :" + a13); cat13 = a13; dataset.setValue(a13, "gfdg", "Object Orientation"); } else if (myKey < 53) { count14++; int a14 = (count14 * 100) / 3; System.out.println("count 14 :" + a14); cat14 = a14; dataset.setValue(a14, "gfdg", "Objects, Variable, Methods"); } else if (myKey < 55) { count15++; int a15 = (count15 * 100) / 2; System.out.println("count 15 :" + a15); cat15 = a15; dataset.setValue(a15, "gfdg", "String, String Buffer, String Builder"); } else if (myKey < 59) { count16++; int a16 = (count16 * 100) / 4; System.out.println("count 16 :" + a16); cat16 = a16; dataset.setValue(a16, "gfdg", "Threads"); } else if (myKey < 61) { count17++; int a17 = (count17 * 100) / 2; System.out.println("count 17 :" + a17); cat17 = a17; dataset.setValue(a17, "gfdg", "Wrapper Classes"); } System.out.println("keys :" + myKey); // // //JFreeChart chart=ChartFactory.create // } // } // JFreeChart freeChart = ChartFactory.createBarChart("Marks with catagories", "Subject", "Persentage", dataset, PlotOrientation.VERTICAL, false, true, false); // CategoryPlot plot = freeChart.getCategoryPlot(); // plot.setRangeGridlinePaint(Color.BLUE); // ChartFrame frame = new ChartFrame("Student Performance", freeChart); // frame.setVisible(true); // frame.setSize(550, 450); System.out.println("Correct :" + anxCount); System.out.println("Percentage :" + (anxCount * 100) / 60 + "%"); System.out.println("submit answers " + answerMap); System.out.println("correct answers " + newMap); try { controller.removeObserve(studentObserverImpl); } catch (RemoteException ex) { Logger.getLogger(QuestionLab.class.getName()).log(Level.SEVERE, null, ex); } } } int option = JOptionPane.showConfirmDialog(this, "Would you like to stop the exam?please notify your hole answers must be lost", "Confirm Message", JOptionPane.YES_NO_OPTION); System.out.println(option); if (option == 0) { dispose(); new PrograssCharts(null, true).setVisible(true); } // this.dispose(); // new PrograssCharts(null, true).setVisible(true); }
From source file:DAO.DataAccessObject.java
/** * Umsatzkurze fr die letzten 6 Monate gesamt. * /*from www . j a va2 s. c o m*/ * @return Linechart */ public JFreeChart gibChartUmsatzAuftragswert() { //Charts und Datasets. JFreeChart lineChart; DefaultCategoryDataset dataset; Collection<Auftragskopf> auftraege = null; dataset = new DefaultCategoryDataset(); double auftragswert = 0; //Datum in ein anderes Format (Tag-Monat-Jahr) konvertieren SimpleDateFormat dateFormat = new SimpleDateFormat("dd.MM.yyyy"); //Calendar-Objekt holen Calendar cal = Calendar.getInstance(); String monat = ""; Date vorSechsMonaten = cal.getTime(); for (int i = 5; i >= 0; i--) { //Datum von vor sechs Monaten berechnet cal.add(Calendar.MONTH, -i); vorSechsMonaten = cal.getTime(); monat = new DateFormatSymbols() .getMonths()[Integer.parseInt(dateFormat.format(vorSechsMonaten).split("\\.")[1]) - 1]; auftragswert = this.gibUmsatzProMonat(vorSechsMonaten); dataset.setValue(auftragswert, "Monatlicher Gesamtumsatz", monat); cal = Calendar.getInstance(); } //Diagramm erstellen. lineChart = ChartFactory.createLineChart("Umsatzkurve " + "(Letzte 6 Monate)", null, "Umsatz in ", dataset, PlotOrientation.VERTICAL, true, true, true); return lineChart; }
From source file:skoa.helpers.Graficos.java
private DefaultCategoryDataset obtenerSerieBarras2(Vector<String> v) { DefaultCategoryDataset dataset = new DefaultCategoryDataset(); File archivo = new File(ruta + "estadisticas.txt"); FileReader fr = null;//from w ww . j a v a 2 s . c o m BufferedReader linea = null; String line; try { fr = new FileReader(archivo); linea = new BufferedReader(fr); //Se crea para leer las lineas int d = 0, m = 0, a = 0, a1 = 0, m1 = 0, d1 = 0, j; String aux; while ((line = linea.readLine()) != null) { //Lectura del fichero int i = line.indexOf("\t"); String f = line.substring(0, i); String valor = line.substring(i + 1); //Obtencion del dia, mes y ao de la fecha. j = f.indexOf("-"); aux = f.substring(0, j); a = Integer.parseInt(aux); f = f.substring(j + 1); j = f.indexOf("-"); aux = f.substring(0, j); m = Integer.parseInt(aux); f = f.substring(j + 1); j = f.indexOf(" "); aux = f.substring(0, j); d = Integer.parseInt(aux); //Obtencion de la hora de la fecha. f = f.substring(j + 1); if (fechaInicial.contentEquals("")) fechaInicial = d + "/" + m + "/" + a + " " + f; //Variable para la grfica fechaFinal = d + "/" + m + "/" + a + " " + f; j = f.indexOf(":"); if (a1 == 0 & m1 == 0 & d1 == 0) { //Inicializacin: Primera fecha. a1 = a; m1 = m; d1 = d; } else { if (a1 != a) { a1 = a; if (m1 != m) m1 = m; if (d1 != d) d1 = d; } else if (m1 != m) { m1 = m; if (d1 != d) d1 = d; } else if (d1 != d) d1 = d; } String sv = ""; String fecha = "" + d1 + "-" + m1 + " " + f; Double ev; for (int l = 0; l < 3; l++) { //Hasta 3, porque en cada linea hay 3 valores: max,min y med. int p1 = valor.indexOf("\t"); if (p1 != (-1)) { sv = valor.substring(0, p1); valor = valor.substring(p1 + 1); } else { //Ultimo valor. sv = valor; valor = ""; } ev = Double.parseDouble(sv); //Valor a guardar dataset.setValue(ev, nombresDGs.elementAt(l), fecha); } } //fin while leer lineas } catch (Exception e) { e.printStackTrace(); } finally { try { if (null != fr) fr.close(); //Se cierra si todo va bien. } catch (Exception e2) { //Sino salta una excepcion. e2.printStackTrace(); } } return dataset; }
From source file:DAO.DataAccessObject.java
/** * Umsatzkurze fr die letzten 6 Monate gesamt. * //from w w w .j ava2s.c o m * @return Linechart */ public JFreeChart gibChartUmsatzEinkaufAuftragswert() { //Charts und Datasets. JFreeChart lineChart; DefaultCategoryDataset dataset; Collection<Auftragskopf> auftraege = null; dataset = new DefaultCategoryDataset(); double auftragswert = 0; //Datum in ein anderes Format (Tag-Monat-Jahr) konvertieren SimpleDateFormat dateFormat = new SimpleDateFormat("dd.MM.yyyy"); //Calendar-Objekt holen Calendar cal = Calendar.getInstance(); String monat = ""; Date vorSechsMonaten = cal.getTime(); for (int i = 5; i >= 0; i--) { //Datum von vor sechs Monaten berechnet cal.add(Calendar.MONTH, -i); vorSechsMonaten = cal.getTime(); monat = new DateFormatSymbols() .getMonths()[Integer.parseInt(dateFormat.format(vorSechsMonaten).split("\\.")[1]) - 1]; auftragswert = this.gibUmsatzProMonat(vorSechsMonaten); dataset.setValue(auftragswert, "Monatlicher Gesamtumsatz", monat); cal = Calendar.getInstance(); } cal = Calendar.getInstance(); for (int i = 5; i >= 0; i--) { //Datum von vor sechs Monaten berechnet cal.add(Calendar.MONTH, -i); vorSechsMonaten = cal.getTime(); monat = new DateFormatSymbols() .getMonths()[Integer.parseInt(dateFormat.format(vorSechsMonaten).split("\\.")[1]) - 1]; auftragswert = this.gibEinkaufProMonat(vorSechsMonaten); dataset.setValue(auftragswert, "Monatlicher Einkaufswert", monat); cal = Calendar.getInstance(); } //Diagramm erstellen. lineChart = ChartFactory.createLineChart("Umsatzkurve " + "(Letzte 6 Monate)", null, "Umsatz in ", dataset, PlotOrientation.VERTICAL, true, true, true); return lineChart; }