We could use: ItemLabelPosition positivePosition = new ItemLabelPosition( ItemLabelAnchor.OUTSIDE12, TextAnchor.CENTER_LEFT, TextAnchor.CENTER_LEFT, -Math.PI / 2 ); CategoryPlot plot = chart.getCategoryPlot(); CategoryItemRenderer renderer = plot.getRenderer(); renderer.setBasePositiveItemLabelPosition( positivePosition ); But this way, i cant set the label x,y, position.. this isnt enough.. Should we rewrite all the paint method? Must be another way to an so simple thing...