Example usage for org.jfree.chart.renderer.category WaterfallBarRenderer setGradientPaintTransformer

List of usage examples for org.jfree.chart.renderer.category WaterfallBarRenderer setGradientPaintTransformer

Introduction

In this page you can find the example usage for org.jfree.chart.renderer.category WaterfallBarRenderer setGradientPaintTransformer.

Prototype

public void setGradientPaintTransformer(GradientPaintTransformer transformer) 

Source Link

Document

Sets the gradient paint transformer and sends a RendererChangeEvent to all registered listeners.

Usage

From source file:net.sf.dynamicreports.design.transformation.chartcustomizer.WaterfallBarRendererCustomizer.java

@Override
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) {
        for (int i = 0; i < categoryDataset.getRowCount(); i++) {
            Paint seriesOutlinePaint = categoryRenderer.getSeriesOutlinePaint(i);
            if (seriesOutlinePaint != null) {
                renderer.setSeriesOutlinePaint(i, seriesOutlinePaint);
            }/*ww  w.  j ava2 s.co  m*/
            Paint seriesPaint = categoryRenderer.getSeriesPaint(i);
            if (seriesPaint != null) {
                renderer.setSeriesPaint(i, seriesPaint);
            }
        }
    }
    renderer.setItemMargin(categoryRenderer.getItemMargin());
    GradientPaintTransformer gradientPaintTransformer = categoryRenderer.getGradientPaintTransformer();
    if (gradientPaintTransformer != null) {
        renderer.setGradientPaintTransformer(gradientPaintTransformer);
    }

    if (firstBarPaint != null) {
        renderer.setFirstBarPaint(firstBarPaint);
    }
    if (lastBarPaint != null) {
        renderer.setLastBarPaint(lastBarPaint);
    }
    if (positiveBarPaint != null) {
        renderer.setPositiveBarPaint(positiveBarPaint);
    }
    if (negativeBarPaint != null) {
        renderer.setNegativeBarPaint(negativeBarPaint);
    }

    chart.getCategoryPlot().setRenderer(renderer);
}