List of usage examples for org.jfree.chart.labels XYSeriesLabelGenerator generateLabel
public String generateLabel(XYDataset dataset, int series);
From source file:com.newatlanta.bluedragon.CustomClusteredXYBarRenderer.java
/** * Returns a default legend item for the specified series. Subclasses should * override this method to generate customised items. * //from ww w. j av a2 s .com * @param datasetIndex * the dataset index (zero-based). * @param series * the series index (zero-based). * * @return A legend item for the series. */ public LegendItem getLegendItem(int datasetIndex, int series) { LegendItem result = null; XYPlot xyplot = getPlot(); if (xyplot != null) { XYDataset dataset = xyplot.getDataset(datasetIndex); if (dataset != null) { XYSeriesLabelGenerator lg = getLegendItemLabelGenerator(); String label = lg.generateLabel(dataset, series); String description = label; String toolTipText = null; if (getLegendItemToolTipGenerator() != null) { toolTipText = getLegendItemToolTipGenerator().generateLabel(dataset, series); } String urlText = null; if (getLegendItemURLGenerator() != null) { urlText = getLegendItemURLGenerator().generateLabel(dataset, series); } Shape shape = getLegendBar(); Paint paint = getSeriesPaint(series); Paint outlinePaint = getSeriesOutlinePaint(series); Stroke outlineStroke = getSeriesOutlineStroke(series); // This is the fix for bug #2695 if (paint instanceof java.awt.GradientPaint) { // When the paintstyle is "shade" use the lighter // color while with "light" use the darker color // NOTE: if we take the lighter color (Color2) and make it darker // and it equals the darker color (Color1) then the paintstyle // is "shade". GradientPaint gp = ((GradientPaint) paint); if (cfCHART.getDarkerColor(gp.getColor2()).equals(gp.getColor1())) paint = gp.getColor2(); // the lighter color else paint = gp.getColor1(); // the darker color } result = new LegendItem(label, description, toolTipText, urlText, shape, paint, outlineStroke, outlinePaint); } } return result; }
From source file:org.openfaces.component.chart.impl.renderers.XYLineFillRenderer.java
private LegendItem createLegendItem(int dataSetIndex, int series, XYDataset dataSet) { Shape shape = lookupLegendShape(series); Paint fillPaint = (getUseFillPaint() ? lookupSeriesFillPaint(series) : lookupSeriesPaint(series)); Paint outlinePaint = (getUseOutlinePaint() ? lookupSeriesOutlinePaint(series) : lookupSeriesPaint(series)); Stroke outlineStroke = lookupSeriesOutlineStroke(series); Stroke lineStroke = lookupSeriesStroke(series); Paint linePaint = lookupSeriesPaint(series); Paint labelPaint = lookupLegendTextPaint(series); Font labelFont = lookupLegendTextFont(series); String itemLegendLabel = getLegendItemLabelGenerator().generateLabel(dataSet, series); final XYSeriesLabelGenerator toolTipGenerator = getLegendItemToolTipGenerator(); String toolTipText = (toolTipGenerator != null) ? toolTipGenerator.generateLabel(dataSet, series) : null; final XYSeriesLabelGenerator urlGenerator = getLegendItemURLGenerator(); String urlText = urlGenerator != null ? urlGenerator.generateLabel(dataSet, series) : null; boolean isItemShapeVisible = getItemShapeVisible(series, 0); boolean isItemShapeFilled = getItemShapeFilled(series, 0); boolean isItemShapeOutlineVisible = getDrawOutlines(); boolean isItemLineVisible = getItemLineVisible(series, 0); LegendItem legendItem = new LegendItem(itemLegendLabel, itemLegendLabel, toolTipText, urlText, isItemShapeVisible, shape, isItemShapeFilled, fillPaint, isItemShapeOutlineVisible, outlinePaint, outlineStroke, isItemLineVisible, new Line2D.Double(-7.0, 0.0, 7.0, 0.0), lineStroke, linePaint); legendItem.setLabelFont(labelFont);/* w ww .j ava2 s . c o m*/ legendItem.setLabelPaint(labelPaint); legendItem.setSeriesKey(dataSet.getSeriesKey(series)); legendItem.setSeriesIndex(series); legendItem.setDataset(dataSet); legendItem.setDatasetIndex(dataSetIndex); return legendItem; }
From source file:edu.dlnu.liuwenpeng.render.NewXYBarRenderer.java
/** * Returns a default legend item for the specified series. Subclasses * should override this method to generate customised items. * /*from ww w . j av a 2s . c om*/ * @param datasetIndex the dataset index (zero-based). * @param series the series index (zero-based). * * @return A legend item for the series. */ public LegendItem getLegendItem(int datasetIndex, int series) { LegendItem result = null; XYPlot xyplot = getPlot(); if (xyplot != null) { XYDataset dataset = xyplot.getDataset(datasetIndex); if (dataset != null) { XYSeriesLabelGenerator lg = getLegendItemLabelGenerator(); String label = lg.generateLabel(dataset, series); String description = label; String toolTipText = null; if (getLegendItemToolTipGenerator() != null) { toolTipText = getLegendItemToolTipGenerator().generateLabel(dataset, series); } String urlText = null; if (getLegendItemURLGenerator() != null) { urlText = getLegendItemURLGenerator().generateLabel(dataset, series); } Shape shape = this.legendBar; Paint paint = lookupSeriesPaint(series); Paint outlinePaint = lookupSeriesOutlinePaint(series); Stroke outlineStroke = lookupSeriesOutlineStroke(series); if (this.drawBarOutline) { result = new LegendItem(label, description, toolTipText, urlText, shape, paint, outlineStroke, outlinePaint); } else { result = new LegendItem(label, description, toolTipText, urlText, shape, paint); } result.setDataset(dataset); result.setDatasetIndex(datasetIndex); result.setSeriesKey(dataset.getSeriesKey(series)); result.setSeriesIndex(series); if (getGradientPaintTransformer() != null) { result.setFillPaintTransformer(getGradientPaintTransformer()); } } } return result; }