2,16 → 2,11 |
|
import jomm.utils.BytesUtils; |
import jomm.utils.MimeTypeGuesser; |
import org.apache.log4j.Category; |
import org.jfree.chart.ChartFactory; |
import org.jfree.chart.ChartFrame; |
import org.jfree.chart.JFreeChart; |
import org.jfree.chart.axis.ValueAxis; |
import org.jfree.chart.plot.CategoryPlot; |
import org.jfree.chart.plot.PiePlot; |
import org.jfree.chart.plot.PlotOrientation; |
import org.jfree.chart.plot.RingPlot; |
import org.jfree.data.category.DefaultCategoryDataset; |
import org.jfree.data.general.DefaultPieDataset; |
import pt.estgp.estgweb.services.courses.coursereport.documentmodel.CourseReportDocument; |
import pt.estgp.estgweb.utils.Globals; |
24,7 → 19,6 |
import java.io.FileOutputStream; |
import java.io.IOException; |
|
|
/** |
* Created by jorgemachado on 31/10/17. |
*/ |
47,36 → 41,32 |
|
String tempName = BytesUtils.generateHexKey() + ".png"; |
|
DefaultCategoryDataset data = new DefaultCategoryDataset(); |
DefaultPieDataset data = new DefaultPieDataset(); |
if(reprovados > 0) |
data.setValue(new Double(reprovados), "Reprovados " + reprovadosPercent + "%","Reprovados " + reprovadosPercent + "%" ); |
data.setValue("Reprovados " + reprovadosPercent + "%", new Double(reprovados)); |
if(aprovados > 0) |
data.setValue(new Double(aprovados),"Aprovados " + aprovadosPercent + "%","Aprovados " + aprovadosPercent + "%"); |
data.setValue("Aprovados " + aprovadosPercent + "%", new Double(aprovados)); |
if(semElementos > 0) |
data.setValue(new Double(semElementos),"Sem Elementos " + semElementosPercent + "%", "Sem Elementos " + semElementosPercent + "%"); |
data.setValue("Sem Elementos " + semElementosPercent + "%", new Double(semElementos)); |
|
//Grafico Barras |
JFreeChart chart = ChartFactory.createBarChart(null, null,null,data, PlotOrientation.VERTICAL, true,true,false); |
|
JFreeChart chart = ChartFactory.createRingChart(null, data, false, true, false); |
chart.setBackgroundPaint(new Color(255,255,255)); |
|
CategoryPlot plot = chart.getCategoryPlot(); |
|
plot.setRangeGridlinePaint(Color.black); |
|
PiePlot plot = (RingPlot) chart.getPlot(); |
plot.setLabelBackgroundPaint(new Color(255, 249, 235)); |
plot.setLabelPaint(new Color(88, 88, 90)); |
//plot.setDrawingSupplier(new ChartBuilderUtil.ChartDrawingSupplier()); |
/* |
|
plot.setSectionPaint(0, new Color(255, 0, 0)); |
plot.setSectionPaint(1, new Color(15, 218, 10)); |
plot.setSectionPaint(2, new Color(200, 200, 200)); |
plot.setBackgroundPaint(new Color(255, 255, 255)); |
plot.setOutlineVisible(false); |
plot.setBackgroundPaint(new Color(240, 240, 240)); |
plot.setOutlineVisible(true); |
|
|
|
plot.setLabelFont(new Font( |
"Helvetica", Font.PLAIN, 30)); |
*/ |
|
plot.getDomainAxis().setTickLabelFont(new Font("Helvetica", Font.PLAIN, 30)); |
|
BufferedImage image = chart.createBufferedImage( 300*4, 200*4); |
String pathGraficoTiposAlunos = Globals.TMP_DIR + java.io.File.separator + tempName; |
94,7 → 84,8 |
} |
|
public static void main(String [] args) throws IOException { |
float aprovados = 10; |
|
/*float aprovados = 10; |
float reprovados = 2; |
float semElementos = 4; |
double aprovadosPercent = ((int)10/16*100.0)/100.0; |
103,28 → 94,22 |
|
String tempName = BytesUtils.generateHexKey() + ".png"; |
|
DefaultCategoryDataset data = new DefaultCategoryDataset(); |
DefaultPieDataset data = new DefaultPieDataset(); |
if(reprovados > 0) |
data.setValue(new Double(reprovados), "Reprovados " + reprovadosPercent + "%","Reprovados2 " + reprovadosPercent + "%" ); |
data.setValue("Reprovados " + reprovadosPercent + "%", new Double(reprovados)); |
if(aprovados > 0) |
data.setValue(new Double(aprovados),"Aprovados " + aprovadosPercent + "%","Aprovados2 " + aprovadosPercent + "%"); |
data.setValue("Aprovados " + aprovadosPercent + "%", new Double(aprovados)); |
if(semElementos > 0) |
data.setValue(new Double(semElementos),"Sem Elementos " + semElementosPercent + "%", "Sem Elementos2 " + semElementosPercent + "%"); |
data.setValue("Sem Elementos " + semElementosPercent + "%", new Double(semElementos)); |
|
//Grafico Circulo |
JFreeChart chart = ChartFactory.createRingChart(null, data, false, true, false); |
|
//Grafico Barras |
JFreeChart chart = ChartFactory.createBarChart(null, null,null,data, PlotOrientation.VERTICAL, true,true,false); |
//JFreeChart chart = ChartFactory.createBarChart("OLA", null,null,null, PlotOrientation.VERTICAL, true,true,false); |
|
chart.setBackgroundPaint(new Color(255,255,255)); |
|
CategoryPlot plot = chart.getCategoryPlot(); |
|
plot.setRangeGridlinePaint(Color.black); |
|
ChartFrame chatFrm = new ChartFrame("APROVADOS",chart,true); |
chatFrm.setVisible(true); |
chatFrm.setSize(500,400); |
|
/* |
PiePlot plot = (RingPlot) chart.getPlot(); |
plot.setLabelBackgroundPaint(new Color(255, 249, 235)); |
plot.setLabelPaint(new Color(88, 88, 90)); |
//plot.setDrawingSupplier(new ChartBuilderUtil.ChartDrawingSupplier()); |
139,14 → 124,13 |
|
plot.setLabelFont(new Font( |
"Helvetica", Font.PLAIN, 30)); |
*/ |
|
|
BufferedImage image = chart.createBufferedImage( 300*4, 200*4); |
String pathGraficoTiposAlunos = Globals.TMP_DIR + java.io.File.separator + tempName; |
java.io.File output = new java.io.File(pathGraficoTiposAlunos); |
ImageIO.write(image, "png", new FileOutputStream(output)); |
ImageIO.write(image, "png", new FileOutputStream(output));*/ |
|
|
} |
|
|