NumberFormat format = NumberFormat.getNumberInstance(); format.setMaximumFractionDigits(2); // etc. XYItemLabelGenerator generator = new StandardXYItemLabelGenerator("{0} {1} {2}", format, format); renderer.setBaseItemLabelGenerator(generator); renderer.setBaseItemLabelsVisible(true);
/** * Generates the item label text for an item in a dataset. * * @param dataset the dataset (<code>null</code> not permitted). * @param series the series index (zero-based). * @param item the item index (zero-based). * * @return The label text (possibly <code>null</code>). */ public String generateLabel(XYDataset dataset, int series, int item) { return generateLabelString(dataset, series, item); }
public String generateLabel(XYDataset dataset, int series, int item) { Comparable seriesName = dataset.getSeriesKey(series); Map labels = (Map)labelsMap.get(seriesName); if(labels != null) { return (String)labels.get(((XYSeriesCollection)dataset).getX(series, item)); } return super.generateLabel( dataset, series, item ); } }
renderer.setBaseItemLabelGenerator(new StandardXYItemLabelGenerator()); renderer.setBasePositiveItemLabelPosition(new ItemLabelPosition( ItemLabelAnchor.OUTSIDE12, TextAnchor.BOTTOM_CENTER)); renderer.setBaseItemLabelsVisible(true);
/** * Generates the item label text for an item in a dataset. * * @param dataset the dataset ({@code null} not permitted). * @param series the series index (zero-based). * @param item the item index (zero-based). * * @return The label text (possibly {@code null}). */ @Override public String generateLabel(XYDataset dataset, int series, int item) { return generateLabelString(dataset, series, item); }
public String generateLabel(XYDataset dataset, int series, int item) { Comparable seriesName = dataset.getSeriesKey(series); Map labels = (Map)labelsMap.get(seriesName); if(labels != null) { return (String)labels.get(((TimePeriodValuesCollection)dataset).getSeries(series).getTimePeriod(item)); } return super.generateLabel( dataset, series, item ); } }
private DefaultXYItemRenderer creatItemRenderer(int index, int yDataType) { DefaultXYItemRenderer itemRenderer = new DefaultXYItemRenderer(); itemRenderer.setSeriesPaint(0, DEFAULT_PAINT_ARRAY[index % DEFAULT_PAINT_ARRAY.length]); itemRenderer.setSeriesShape(0, DEFAULT_SHAPE_ARRAY[index % DEFAULT_SHAPE_ARRAY.length]); itemRenderer.setBaseToolTipGenerator(new StandardXYToolTipGenerator()); final DecimalFormat numberFormat = new DecimalFormat("0.00#"); numberFormat.setGroupingUsed(false); StandardXYToolTipGenerator toolTipGenerator; if (ProductData.TYPE_UTC == yDataType) { toolTipGenerator = new StandardXYToolTipGenerator(TOOL_TIP_FORMAT, numberFormat, SIMPLE_DATE_FORMAT); } else { toolTipGenerator = new StandardXYToolTipGenerator(TOOL_TIP_FORMAT, numberFormat, numberFormat); } itemRenderer.setSeriesToolTipGenerator(0, toolTipGenerator); StandardXYItemLabelGenerator itemLabelGenerator; if (ProductData.TYPE_UTC == yDataType) { itemLabelGenerator = new StandardXYItemLabelGenerator(ITEM_LABEL_FORMAT, numberFormat, SIMPLE_DATE_FORMAT); } else { itemLabelGenerator = new StandardXYItemLabelGenerator(ITEM_LABEL_FORMAT, numberFormat, numberFormat); } itemRenderer.setSeriesItemLabelGenerator(0, itemLabelGenerator); return itemRenderer; }
public String generateLabel(XYDataset dataset, int series, int item) { Comparable seriesName = dataset.getSeriesKey(series); Map labels = (Map)labelsMap.get(seriesName); if(labels != null) { return (String)labels.get(((TimeSeriesCollection)dataset).getSeries(series).getTimePeriod(item)); } return super.generateLabel( dataset, series, item ); } }
XYItemRenderer renderer = chart.getXYPlot().getRenderer(); if (StringUtils.isBlank(valuePattern)) { renderer.setBaseItemLabelGenerator(new StandardXYItemLabelGenerator()); } else { renderer.setBaseItemLabelGenerator( new StandardXYItemLabelGenerator(StandardXYItemLabelGenerator.DEFAULT_ITEM_LABEL_FORMAT, NumberFormat.getNumberInstance(), new DecimalFormat(valuePattern)));
renderer.setDrawBarOutline(true); renderer.setBaseItemLabelsVisible(true); renderer.setBaseItemLabelGenerator(new StandardXYItemLabelGenerator());
renderer.setDrawBarOutline(true); renderer.setBaseItemLabelsVisible(true); renderer.setBaseItemLabelGenerator(new StandardXYItemLabelGenerator());
/** * Utility method to set the default style of the XY Bar Charts * * @param chart {@link JFreeChart} to style */ private static void setXYBarChartDefaults(JFreeChart chart) { ChartUtil.setDefaults(chart); XYPlot plot = (XYPlot) chart.getPlot(); plot.setAxisOffset(new RectangleInsets(1.0, 1.0, 1.0, 1.0)); // renderer XYBarRenderer renderer = (XYBarRenderer) plot.getRenderer(); renderer.setBaseItemLabelFont(ChartDefaults.defaultFont); renderer.setBaseItemLabelsVisible(false); renderer.setBasePositiveItemLabelPosition( new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12, TextAnchor.BOTTOM_CENTER)); renderer.setBaseItemLabelGenerator(new StandardXYItemLabelGenerator()); renderer.setBaseItemLabelPaint(ChartDefaults.axisLabelColor); StandardXYToolTipGenerator generator = new StandardXYToolTipGenerator("{1}, {2}", NumberFormat.getInstance(), NumberFormat.getInstance()); renderer.setBaseToolTipGenerator(generator); renderer.setDrawBarOutline(false); for (int j = 0; j < ChartDefaults.darkColors.length; j++) { renderer.setSeriesPaint(j, ChartDefaults.darkColors[j]); } }
public JFreeChart createStackedBarChart(String title, XYDataset dataset) { DateAxis domainAxis = new DateAxis("Date"); domainAxis.setTickMarkPosition(DateTickMarkPosition.MIDDLE); domainAxis.setLowerMargin(0.01); domainAxis.setUpperMargin(0.01); NumberAxis rangeAxis = new NumberAxis("Hours"); rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); rangeAxis.setUpperMargin(0.10); // leave some space for item labels StackedXYBarRenderer renderer = new StackedXYBarRenderer(0.15); // StackedXYAreaRenderer2 renderer = new StackedXYAreaRenderer2(); renderer.setDrawBarOutline(false); renderer.setBaseItemLabelsVisible(true); renderer.setBaseItemLabelGenerator(new StandardXYItemLabelGenerator()); renderer.setBasePositiveItemLabelPosition(new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12, TextAnchor.BOTTOM_CENTER)); renderer.setBaseToolTipGenerator(new StandardXYToolTipGenerator("{0} : {1} = {2}", new SimpleDateFormat("yyyy"), new DecimalFormat("0"))); XYPlot plot = new XYPlot(dataset, domainAxis, rangeAxis, renderer); JFreeChart chart = new JFreeChart(title, plot); chart.removeLegend(); chart.setTextAntiAlias(RenderingHints.VALUE_TEXT_ANTIALIAS_DEFAULT); LegendTitle legend = new LegendTitle(plot); legend.setBackgroundPaint(Color.white); legend.setFrame(new BlockBorder()); legend.setPosition(RectangleEdge.BOTTOM); chart.addSubtitle(legend); return chart; }
StandardXYItemLabelGenerator itemlabels = new StandardXYItemLabelGenerator(); renderer.setBaseItemLabelGenerator(itemlabels); renderer.setBaseItemLabelsVisible(true);
renderer.setBaseItemLabelGenerator(new StandardXYItemLabelGenerator()); renderer.setBaseItemLabelPaint(ChartDefaults.axisLabelColor);
public JFreeChart createStackedAreaChart(String title, TableXYDataset dataset) { DateAxis domainAxis = new DateAxis("Date"); domainAxis.setTickMarkPosition(DateTickMarkPosition.MIDDLE); domainAxis.setLowerMargin(0.01); domainAxis.setUpperMargin(0.01); NumberAxis rangeAxis = new NumberAxis("Minutes"); rangeAxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); rangeAxis.setUpperMargin(0.10); StackedXYAreaRenderer2 renderer = new StackedXYAreaRenderer2(); renderer.setBaseItemLabelsVisible(true); renderer.setBaseItemLabelGenerator(new StandardXYItemLabelGenerator()); renderer.setBasePositiveItemLabelPosition(new ItemLabelPosition(ItemLabelAnchor.OUTSIDE12, TextAnchor.BOTTOM_CENTER)); renderer.setSeriesPaint(0, Color.lightGray); XYPlot plot = new XYPlot(dataset, domainAxis, rangeAxis, renderer); plot.setRenderer(0, renderer); plot.setDomainCrosshairVisible(true); plot.setRangeCrosshairVisible(true); LegendTitle legend = new LegendTitle(plot); legend.setBackgroundPaint(Color.white); legend.setFrame(new BlockBorder()); legend.setPosition(RectangleEdge.BOTTOM); JFreeChart chart = new JFreeChart(title, JFreeChart.DEFAULT_TITLE_FONT, plot, true); chart.removeLegend(); chart.setTextAntiAlias(RenderingHints.VALUE_TEXT_ANTIALIAS_DEFAULT); chart.addSubtitle(legend); return chart; }