List of usage examples for org.jfree.chart.renderer.category AreaRenderer setSeriesItemLabelFont
public void setSeriesItemLabelFont(int series, Font font, boolean notify)
From source file:org.pentaho.chart.plugin.jfreechart.chart.JFreeChartGenerator.java
/** * Sets the series item label(s) defined in the chartDocument * * @param categoryPlot - Plot for the current chart * @param seriesElements - Array of Series elements * @param data - the data//from w w w.j ava2 s.c om */ protected void setSeriesItemLabel(final CategoryPlot categoryPlot, final ChartElement[] seriesElements, final ChartTableModel data) { final int numOfDatasets = categoryPlot.getDatasetCount(); for (int datasetCounter = 0; datasetCounter < numOfDatasets; datasetCounter++) { categoryPlot.getRenderer(datasetCounter) .setBaseItemLabelGenerator(new ChartItemLabelGenerator(seriesElements, data)); final int numOfSeriesElements = seriesElements.length; for (int seriesCounter = 0; seriesCounter < numOfSeriesElements; seriesCounter++) { // Get and set font information only if the item label's visibility is set to true if (JFreeChartUtils.showItemLabel(seriesElements[seriesCounter])) { final Font font = JFreeChartUtils.getFont(seriesElements[seriesCounter]); final CategoryItemRenderer categoryItemRenderer = categoryPlot.getRenderer(datasetCounter); if (categoryItemRenderer instanceof BarRenderer) { final BarRenderer barRender = (BarRenderer) categoryItemRenderer; barRender.setSeriesItemLabelFont(seriesCounter, font, true); barRender.setSeriesItemLabelsVisible(seriesCounter, Boolean.TRUE, true); } else if (categoryItemRenderer instanceof AreaRenderer) { final AreaRenderer areaRender = (AreaRenderer) categoryItemRenderer; areaRender.setSeriesItemLabelFont(seriesCounter, font, true); areaRender.setSeriesPositiveItemLabelPosition(seriesCounter, new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12, TextAnchor.TOP_CENTER)); areaRender.setSeriesNegativeItemLabelPosition(seriesCounter, new ItemLabelPosition(ItemLabelAnchor.OUTSIDE6, TextAnchor.BOTTOM_CENTER)); areaRender.setSeriesItemLabelsVisible(seriesCounter, Boolean.TRUE, true); } } } } }