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

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

Introduction

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

Prototype

public void setItemMargin(double percent) 

Source Link

Document

Sets the item margin 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);
            }/*from  w ww  . j  av  a2  s  . c  om*/
            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);
}