1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
| //CAPA : construction de la coubre CAPACITE
final LineAndShapeRenderer rendererCapa = new LineAndShapeRenderer();
rendererCapa.setStroke(new BasicStroke(1.5f));
rendererCapa.setPaint(new Color(0x226644));
rendererCapa.setShape(ShapeUtilities.createDiamond(4f));
final StackedBarRenderer labelrendererCapa = new StackedBarRenderer();
labelrendererCapa.setItemLabelPaint(new Color(0x226644));
labelrendererCapa.setItemLabelGenerator(new CapacityItemLabelGenerator());
labelrendererCapa.setPositiveItemLabelPosition(new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12, TextAnchor.TOP_CENTER));
labelrendererCapa.setBaseItemLabelsVisible(true);
labelrendererCapa.setOutlinePaint(Color.WHITE);
labelrendererCapa.setPaint(Color.WHITE);
labelrendererCapa.setItemLabelFont(new Font("Arial", Font.PLAIN, 10));
vPlot.setDataset(0, lCapaData); // lCapaData est le dataset de CAPA
vPlot.setRenderer(0, rendererCapa);
vPlot.setDataset(2, lCapaData); // lCapaData est le dataset de CAPA
vPlot.setRenderer(2, labelrendererCapa);
ValueAxis lAxis = new NumberAxis();
lAxis.setInverted(true);
lAxis.setVisible(false);
lAxis.setRange(0, 10000);
lAxis.setAxisLineVisible(true);
vPlot.setRangeAxis(1, lAxis);
vPlot.mapDatasetToRangeAxis(2, 1);
//CONTRUSCTION DE LA BARRE LOAD
LayeredBarRenderer rendererLoad = new LayeredBarRenderer();
rendererLoad.setBaseItemLabelFont(new Font("Arial", Font.PLAIN, 10));
rendererLoad.setPaint(Color.YELLOW);
rendererLoad.setSeriesBarWidth(1, 1.0);
rendererLoad.setItemMargin(0.01);
//CONSTRUCTION DE LA BARRE SUM
LayeredBarRenderer rendererSum = new LayeredBarRenderer();
rendererSum.setSeriesBarWidth(3, 0.5);
rendererSum.setPaint(Color.BLUE);
rendererSum.setItemMargin(0.01);
// Affichage dans le graphique
vPlot.setDataset(1, lLoadData); //lLoadData est le dataset du load
vPlot.setRenderer(1, rendererLoad);
vPlot.setDataset(1, lSumData); //lSumData est le dataset du sum
vPlot.setRenderer(1, rendererSum);
// Construction axis.
CategoryAxis vAxis = new CategoryAxis();
Color AXIS_COLOR = new Color(0x00080);
vAxis.setCategoryMargin(0.25);
vAxis.setLowerMargin(0.05);
vAxis.setUpperMargin(0.05);
vAxis.setMaximumCategoryLabelLines(10);
vAxis.setTickMarkPaint(AXIS_COLOR);
vAxis.setAxisLinePaint(AXIS_COLOR);
vAxis.setAxisLineVisible(true);
vAxis.setLabelPaint(AXIS_COLOR);
vAxis.setTickLabelPaint(AXIS_COLOR);
vPlot.setDomainAxis(vAxis);
// Construction upper axis.
NumberAxis vAxisNumber = new NumberAxis();
vAxisNumber.setUpperMargin(0.15);
vAxisNumber.setAxisLinePaint(AXIS_COLOR);
vAxisNumber.setAxisLineVisible(true);
vAxisNumber.setTickLabelPaint(AXIS_COLOR);
vPlot.setRangeAxis(vAxisNumber);
// Writing Graph : Une fonction à part qui permet d'afficher le graphe sous forme d'image png à uen dimension donnée.
writeChartResponse(vChart, pResponse); |
Partager