Hi . this is the method i used to customize it public void customize(JFreeChart chart, JRChart jasperChart) { Plot plot = chart.getPlot(); if (plot instanceof CategoryPlot) { CategoryPlot catPlot = (CategoryPlot) plot; BarRenderer renderer = (BarRenderer) catPlot.getRenderer(); //ser bar widht renderer.setMaximumBarWidth(0.07); //set margin between two bar('of one year') renderer.setItemMargin(0.0f); NumberAxis leftNumberAxis = (NumberAxis) catPlot.getRangeAxis(); leftNumberAxis.setUpperMargin(0.30); leftNumberAxis.setNumberFormatOverride(new NumberFormat() { @Override public StringBuffer format(double number, StringBuffer toAppendTo, FieldPosition pos) { return new StringBuffer(String.valueOf(number).concat("%")); } @Override public StringBuffer format(long number, StringBuffer toAppendTo, FieldPosition pos) { return new StringBuffer(String.valueOf(number).concat("%")); } @Override public Number parse(String source, ParsePosition parsePosition) { throw new UnsupportedOperationException("Not supported yet."); } }); } }