/** * Sets the paint that will be used to draw bars having positive values. * * @param paint the paint (<code>null</code> not permitted). */ public void setPositiveBarPaint(Paint paint) { if (paint == null) { throw new IllegalArgumentException("Null 'paint' argument"); } this.positiveBarPaint = paint; fireChangeEvent(); }
int categoryCount = getColumnCount(); PlotOrientation orientation = plot.getOrientation(); double rectHeight = Math.max(getMinimumBarLength(), Math.abs(j2dy1 - j2dy0)); if (orientation == PlotOrientation.HORIZONTAL) { rectY = domainAxis.getCategorySeriesMiddle(categoryKey, seriesKey, dataset, getItemMargin(), dataArea, RectangleEdge.LEFT); rectWidth = Math.max(getMinimumBarLength(), Math.abs(j2dy1 - j2dy0)); dataset, getItemMargin(), dataArea, RectangleEdge.TOP); rectX = rectX - rectWidth / 2.0; rectY = j2dy0; Paint seriesPaint; if (column == 0) { seriesPaint = getFirstBarPaint(); seriesPaint = getLastBarPaint(); seriesPaint = getNegativeBarPaint(); seriesPaint = getPositiveBarPaint(); seriesPaint = getLastBarPaint();
public void customize(JFreeChart chart, ReportParameters reportParameters) { BarRenderer categoryRenderer = (BarRenderer) chart.getCategoryPlot().getRenderer(); WaterfallBarRenderer renderer = new WaterfallBarRenderer(); renderer.setBaseItemLabelsVisible(categoryRenderer.getBaseItemLabelsVisible()); renderer.setBaseItemLabelFont(categoryRenderer.getBaseItemLabelFont()); renderer.setBaseItemLabelPaint(categoryRenderer.getBaseItemLabelPaint()); renderer.setBaseItemLabelGenerator(categoryRenderer.getBaseItemLabelGenerator()); renderer.setShadowVisible(categoryRenderer.getShadowsVisible()); CategoryDataset categoryDataset = chart.getCategoryPlot().getDataset(); if (categoryDataset != null) { Paint seriesOutlinePaint = categoryRenderer.getSeriesOutlinePaint(i); if (seriesOutlinePaint != null) { renderer.setSeriesOutlinePaint(i, seriesOutlinePaint); renderer.setSeriesPaint(i, seriesPaint); renderer.setItemMargin(categoryRenderer.getItemMargin()); GradientPaintTransformer gradientPaintTransformer = categoryRenderer.getGradientPaintTransformer(); if (gradientPaintTransformer != null) { renderer.setGradientPaintTransformer(gradientPaintTransformer); renderer.setFirstBarPaint(firstBarPaint); renderer.setLastBarPaint(lastBarPaint); renderer.setPositiveBarPaint(positiveBarPaint);
WaterfallBarRenderer renderer = new WaterfallBarRenderer(); if (orientation == PlotOrientation.HORIZONTAL) { ItemLabelPosition position = new ItemLabelPosition( ItemLabelAnchor.CENTER, TextAnchor.CENTER, TextAnchor.CENTER, Math.PI / 2.0); renderer.setBasePositiveItemLabelPosition(position); renderer.setBaseNegativeItemLabelPosition(position); ItemLabelAnchor.CENTER, TextAnchor.CENTER, TextAnchor.CENTER, 0.0); renderer.setBasePositiveItemLabelPosition(position); renderer.setBaseNegativeItemLabelPosition(position); renderer.setBaseToolTipGenerator(generator); renderer.setBaseItemURLGenerator( new StandardCategoryURLGenerator());
WaterfallBarRenderer renderer = new WaterfallBarRenderer(); if (orientation == PlotOrientation.HORIZONTAL) { ItemLabelPosition position = new ItemLabelPosition( ItemLabelAnchor.CENTER, TextAnchor.CENTER, TextAnchor.CENTER, Math.PI / 2.0); renderer.setDefaultPositiveItemLabelPosition(position); renderer.setDefaultNegativeItemLabelPosition(position); ItemLabelAnchor.CENTER, TextAnchor.CENTER, TextAnchor.CENTER, 0.0); renderer.setDefaultPositiveItemLabelPosition(position); renderer.setDefaultNegativeItemLabelPosition(position); renderer.setDefaultToolTipGenerator(generator); renderer.setDefaultItemURLGenerator( new StandardCategoryURLGenerator());
this.positiveBarPaint = positiveBarPaint; this.negativeBarPaint = negativeBarPaint; setGradientPaintTransformer(new StandardGradientPaintTransformer( GradientPaintTransformType.CENTER_VERTICAL)); setMinimumBarLength(1.0);
int categoryCount = getColumnCount(); PlotOrientation orientation = plot.getOrientation(); double rectHeight = Math.max(getMinimumBarLength(), Math.abs(j2dy1 - j2dy0)); if (orientation == PlotOrientation.HORIZONTAL) { rectY = domainAxis.getCategorySeriesMiddle(categoryKey, seriesKey, dataset, getItemMargin(), dataArea, RectangleEdge.LEFT); rectWidth = Math.max(getMinimumBarLength(), Math.abs(j2dy1 - j2dy0)); dataset, getItemMargin(), dataArea, RectangleEdge.TOP); rectX = rectX - rectWidth / 2.0; rectY = j2dy0; Paint seriesPaint; if (column == 0) { seriesPaint = getFirstBarPaint(); seriesPaint = getLastBarPaint(); seriesPaint = getPositiveBarPaint(); } else { seriesPaint = getNegativeBarPaint(); if (getGradientPaintTransformer() != null && seriesPaint instanceof GradientPaint) {
/** * Constructs a new waterfall renderer. * * @param firstBarPaint the color of the first bar ({@code null} not * permitted). * @param positiveBarPaint the color for bars with positive values * ({@code null} not permitted). * @param negativeBarPaint the color for bars with negative values * ({@code null} not permitted). * @param lastBarPaint the color of the last bar ({@code null} not * permitted). */ public WaterfallBarRenderer(Paint firstBarPaint, Paint positiveBarPaint, Paint negativeBarPaint, Paint lastBarPaint) { super(); Args.nullNotPermitted(firstBarPaint, "firstBarPaint"); Args.nullNotPermitted(positiveBarPaint, "positiveBarPaint"); Args.nullNotPermitted(negativeBarPaint, "negativeBarPaint"); Args.nullNotPermitted(lastBarPaint, "lastBarPaint"); this.firstBarPaint = firstBarPaint; this.lastBarPaint = lastBarPaint; this.positiveBarPaint = positiveBarPaint; this.negativeBarPaint = negativeBarPaint; setGradientPaintTransformer(new StandardGradientPaintTransformer( GradientPaintTransformType.CENTER_VERTICAL)); setMinimumBarLength(1.0); }
/** * Sets the paint that will be used to draw the first bar and sends a * {@link RendererChangeEvent} to all registered listeners. * * @param paint the paint (<code>null</code> not permitted). */ public void setFirstBarPaint(Paint paint) { if (paint == null) { throw new IllegalArgumentException("Null 'paint' argument"); } this.firstBarPaint = paint; fireChangeEvent(); }
/** * Sets the paint that will be used to draw the last bar and sends a * {@link RendererChangeEvent} to all registered listeners. * * @param paint the paint (<code>null</code> not permitted). */ public void setLastBarPaint(Paint paint) { if (paint == null) { throw new IllegalArgumentException("Null 'paint' argument"); } this.lastBarPaint = paint; fireChangeEvent(); }
/** * Sets the paint that will be used to draw bars having negative values, * and sends a {@link RendererChangeEvent} to all registered listeners. * * @param paint the paint (<code>null</code> not permitted). */ public void setNegativeBarPaint(Paint paint) { if (paint == null) { throw new IllegalArgumentException("Null 'paint' argument"); } this.negativeBarPaint = paint; fireChangeEvent(); }
/** * Sets the paint that will be used to draw bars having negative values, * and sends a {@link RendererChangeEvent} to all registered listeners. * * @param paint the paint ({@code null} not permitted). */ public void setNegativeBarPaint(Paint paint) { Args.nullNotPermitted(paint, "paint"); this.negativeBarPaint = paint; fireChangeEvent(); }
/** * Sets the paint that will be used to draw the last bar and sends a * {@link RendererChangeEvent} to all registered listeners. * * @param paint the paint ({@code null} not permitted). */ public void setLastBarPaint(Paint paint) { Args.nullNotPermitted(paint, "paint"); this.lastBarPaint = paint; fireChangeEvent(); }
/** * Sets the paint that will be used to draw the first bar and sends a * {@link RendererChangeEvent} to all registered listeners. * * @param paint the paint ({@code null} not permitted). */ public void setFirstBarPaint(Paint paint) { Args.nullNotPermitted(paint, "paint"); this.firstBarPaint = paint; fireChangeEvent(); }
/** * Sets the paint that will be used to draw bars having positive values. * * @param paint the paint ({@code null} not permitted). */ public void setPositiveBarPaint(Paint paint) { Args.nullNotPermitted(paint, "paint"); this.positiveBarPaint = paint; fireChangeEvent(); }