List of usage examples for org.jfree.chart.renderer.xy XYErrorRenderer setSeriesShapesFilled
public void setSeriesShapesFilled(int series, boolean flag)
From source file:jhplot.HChart.java
/** * Draw data from a P1D. Drawing updated automatically. 1st level errors are * shown if the dimension is above 5. Otherwise show X and Y. If you set * setChartPolar() before,m you can also show polar coordinates. * /*from w w w .ja va2s . c o m*/ * @param d * input P1D container */ public void add(P1D d) { if (cdatPolar[N1][N2] != null) { XYSeries SerData = new XYSeries(d.getTitle()); for (int i = 0; i < d.size(); i++) SerData.add(d.getX(i), d.getY(i)); cdatPolar[N1][N2].addSeries(SerData); return; // return if this is polar chart } // assume XY chart // System.out.println(d.dimension()); LinePars lpp = d.getDrawOption(); float width = (float) lpp.getPenWidth(); int style = d.getLineStyle(); float dash = lpp.getDashLength(); int symbol = lpp.getSymbol(); Shape shape = getShape(symbol, lpp.getSymbolSize()); // setSeriesShapesFilled(int series, java.lang.Boolean flag) // setShapesFilled(boolean filled) if (d.dimension() > 5) { XYIntervalSeriesCollection c = new XYIntervalSeriesCollection(); XYIntervalSeries SerData = new XYIntervalSeries(d.getTitle()); for (int i = 0; i < d.size(); i++) SerData.add(d.getX(i), d.getX(i) - d.getXleft(i), d.getX(i) + d.getXright(i), d.getY(i), d.getY(i) - d.getYlower(i), d.getY(i) + d.getYupper(i)); c.addSeries(SerData); xyplot[N1][N2].setDataset(indexdat[N1][N2], c); XYErrorRenderer xyerrorrenderer = new XYErrorRenderer(); xyerrorrenderer.setSeriesStroke(0, getStrokes(style, width, dash)); xyerrorrenderer.setSeriesPaint(0, d.getColor()); xyerrorrenderer.setSeriesOutlinePaint(0, d.getColor()); xyerrorrenderer.setSeriesFillPaint(0, lpp.getFillColor()); xyerrorrenderer.setSeriesShape(0, shape); if (symbol > 0 && symbol < 4) xyerrorrenderer.setSeriesShapesFilled(0, false); if (symbol > 3) xyerrorrenderer.setSeriesShapesFilled(0, true); rdat[N1][N2].add(xyerrorrenderer); type[N1][N2].put(new Integer(indexdat[N1][N2]), "pe"); indexdat[N1][N2]++; } else if (d.dimension() == 4) { XYIntervalSeriesCollection c = new XYIntervalSeriesCollection(); XYIntervalSeries SerData = new XYIntervalSeries(d.getTitle()); for (int i = 0; i < d.size(); i++) SerData.add(d.getX(i), d.getX(i), d.getX(i), d.getY(i), d.getY(i) - d.getYlower(i), d.getY(i) + d.getYupper(i)); c.addSeries(SerData); xyplot[N1][N2].setDataset(indexdat[N1][N2], c); XYErrorRenderer xyerrorrenderer = new XYErrorRenderer(); xyerrorrenderer.setSeriesStroke(0, getStrokes(style, width, dash)); xyerrorrenderer.setSeriesPaint(0, d.getColor()); xyerrorrenderer.setSeriesOutlinePaint(0, d.getColor()); xyerrorrenderer.setSeriesFillPaint(0, lpp.getFillColor()); xyerrorrenderer.setSeriesShape(0, shape); if (symbol > 0 && symbol < 4) xyerrorrenderer.setSeriesShapesFilled(0, false); if (symbol > 3) xyerrorrenderer.setSeriesShapesFilled(0, true); rdat[N1][N2].add(xyerrorrenderer); type[N1][N2].put(new Integer(indexdat[N1][N2]), "pe"); indexdat[N1][N2]++; } else if (d.dimension() == 3) { XYIntervalSeriesCollection c = new XYIntervalSeriesCollection(); XYIntervalSeries SerData = new XYIntervalSeries(d.getTitle()); for (int i = 0; i < d.size(); i++) SerData.add(d.getX(i), d.getX(i), d.getX(i), d.getY(i), d.getY(i) - d.getYupper(i), d.getY(i) + d.getYupper(i)); c.addSeries(SerData); xyplot[N1][N2].setDataset(indexdat[N1][N2], c); XYErrorRenderer xyerrorrenderer = new XYErrorRenderer(); xyerrorrenderer.setSeriesStroke(0, getStrokes(style, width, dash)); xyerrorrenderer.setSeriesPaint(0, d.getColor()); xyerrorrenderer.setSeriesOutlinePaint(0, d.getColor()); xyerrorrenderer.setSeriesFillPaint(0, lpp.getFillColor()); xyerrorrenderer.setSeriesShape(0, shape); if (symbol > 0 && symbol < 4) xyerrorrenderer.setSeriesShapesFilled(0, false); if (symbol > 3) xyerrorrenderer.setSeriesShapesFilled(0, true); rdat[N1][N2].add(xyerrorrenderer); type[N1][N2].put(new Integer(indexdat[N1][N2]), "pe"); indexdat[N1][N2]++; } else { XYSeriesCollection c = new XYSeriesCollection(); XYSeries SerData = new XYSeries(d.getTitle()); for (int i = 0; i < d.size(); i++) SerData.add(d.getX(i), d.getY(i)); c.addSeries(SerData); xyplot[N1][N2].setDataset(indexdat[N1][N2], c); XYLineAndShapeRenderer xyerrorrenderer = new XYLineAndShapeRenderer(false, true); xyerrorrenderer.setSeriesStroke(0, getStrokes(style, width, dash)); xyerrorrenderer.setSeriesPaint(0, d.getColor()); xyerrorrenderer.setSeriesOutlinePaint(0, d.getColor()); xyerrorrenderer.setSeriesFillPaint(0, lpp.getFillColor()); xyerrorrenderer.setSeriesShape(0, shape); if (symbol > 0 && symbol < 4) xyerrorrenderer.setSeriesShapesFilled(0, false); if (symbol > 3) xyerrorrenderer.setSeriesShapesFilled(0, true); rdat[N1][N2].add(xyerrorrenderer); type[N1][N2].put(new Integer(indexdat[N1][N2]), "p"); indexdat[N1][N2]++; } }