List of usage examples for org.jfree.chart.plot CategoryPlot getRenderer
public CategoryItemRenderer getRenderer(int index)
From source file:net.sf.maltcms.common.charts.api.ChartCustomizer.java
/** * * @param plot/*from w w w .j a v a2 s .co m*/ * @param alpha */ public static void setSeriesColors(CategoryPlot plot, float alpha) { int datasets = plot.getDatasetCount(); for (int i = 0; i < datasets; i++) { CategoryDataset ds = plot.getDataset(i); CategoryItemRenderer renderer = plot.getRenderer(i); // System.out.println("Dataset has " + ds.getRowCount() + " rows"); for (int j = 0; j < ds.getRowCount(); j++) { renderer.setSeriesPaint(j, withAlpha(plotColors[j % plotColors.length], alpha)); } } }
From source file:net.sf.maltcms.chromaui.charts.ChartCustomizer.java
/** * * @param plot/* w w w. ja v a 2 s.com*/ * @param alpha */ public static void setSeriesColors(CategoryPlot plot, float alpha) { int datasets = plot.getDatasetCount(); for (int i = 0; i < datasets; i++) { CategoryDataset ds = plot.getDataset(i); CategoryItemRenderer renderer = plot.getRenderer(i); Logger.getLogger(ChartCustomizer.class.getName()).log(Level.INFO, "Dataset has {0} rows", ds.getRowCount()); Logger.getLogger(ChartCustomizer.class.getName()).log(Level.INFO, "Dataset has {0} columns", ds.getColumnCount()); for (int j = 0; j < ds.getRowCount(); j++) { renderer.setSeriesPaint(j, withAlpha(plotColors[j % plotColors.length], alpha)); } } }
From source file:net.sf.maltcms.common.charts.api.ChartCustomizer.java
/** * * @param plot// w w w. ja v a 2s. c o m * @param alpha * @param colors */ public static void setSeriesColors(CategoryPlot plot, float alpha, List<Color> colors) { int datasets = plot.getDatasetCount(); for (int i = 0; i < datasets; i++) { CategoryDataset ds = plot.getDataset(i); CategoryItemRenderer renderer = plot.getRenderer(i); // System.out.println("Dataset has " + ds.getRowCount() + " rows"); for (int j = 0; j < ds.getRowCount(); j++) { renderer.setSeriesPaint(j, withAlpha(colors.get(j), alpha)); } } }
From source file:net.sf.maltcms.chromaui.charts.ChartCustomizer.java
/** * * @param plot/*from w ww . j a v a 2s . c o m*/ * @param alpha * @param colors */ public static void setSeriesColors(CategoryPlot plot, float alpha, List<Color> colors) { int datasets = plot.getDatasetCount(); for (int i = 0; i < datasets; i++) { CategoryDataset ds = plot.getDataset(i); CategoryItemRenderer renderer = plot.getRenderer(i); Logger.getLogger(ChartCustomizer.class.getName()).log(Level.INFO, "Dataset has {0} rows", ds.getRowCount()); Logger.getLogger(ChartCustomizer.class.getName()).log(Level.INFO, "Dataset has {0} columns", ds.getColumnCount()); for (int j = 0; j < ds.getRowCount(); j++) { // if (ds.getRowCount() != colors.size()) { // throw new IllegalArgumentException("Number of datasets and number of colors must be equal!"); // } renderer.setSeriesPaint(j, withAlpha(colors.get(j), alpha)); } } }
From source file:org.jfree.chart.demo.DualAxisDemo1.java
private static JFreeChart createChart() { JFreeChart jfreechart = ChartFactory.createBarChart("Dual Axis Chart", "Category", "Value", createDataset1(), PlotOrientation.VERTICAL, false, true, false); jfreechart.setBackgroundPaint(Color.white); CategoryPlot categoryplot = (CategoryPlot) jfreechart.getPlot(); categoryplot.setBackgroundPaint(new Color(238, 238, 255)); categoryplot.setDomainAxisLocation(AxisLocation.BOTTOM_OR_RIGHT); CategoryDataset categorydataset = createDataset2(); categoryplot.setDataset(1, categorydataset); categoryplot.mapDatasetToRangeAxis(1, 1); CategoryAxis categoryaxis = categoryplot.getDomainAxis(); categoryaxis.setCategoryLabelPositions(CategoryLabelPositions.DOWN_45); NumberAxis numberaxis = new NumberAxis("Secondary"); categoryplot.setRangeAxis(1, numberaxis); LineAndShapeRenderer lineandshaperenderer = new LineAndShapeRenderer(); lineandshaperenderer.setBaseToolTipGenerator(new StandardCategoryToolTipGenerator()); categoryplot.setRenderer(1, lineandshaperenderer); categoryplot.setDatasetRenderingOrder(DatasetRenderingOrder.FORWARD); LegendTitle legendtitle = new LegendTitle(categoryplot.getRenderer(0)); legendtitle.setMargin(new RectangleInsets(2D, 2D, 2D, 2D)); legendtitle.setFrame(new BlockBorder()); LegendTitle legendtitle1 = new LegendTitle(categoryplot.getRenderer(1)); legendtitle1.setMargin(new RectangleInsets(2D, 2D, 2D, 2D)); legendtitle1.setFrame(new BlockBorder()); BlockContainer blockcontainer = new BlockContainer(new BorderArrangement()); blockcontainer.add(legendtitle, RectangleEdge.LEFT); blockcontainer.add(legendtitle1, RectangleEdge.RIGHT); blockcontainer.add(new EmptyBlock(2000D, 0.0D)); CompositeTitle compositetitle = new CompositeTitle(blockcontainer); compositetitle.setPosition(RectangleEdge.BOTTOM); jfreechart.addSubtitle(compositetitle); return jfreechart; }
From source file:de.fub.maps.project.detector.model.inference.ui.InferenceResultPanel.java
public void updateView(InferenceDataProcessHandler.ClassificationResult classificationResult) { DefaultCategoryDataset relDataset = getClassificationBarChart().getRelDataset(); DefaultCategoryDataset absDataset = getClassificationBarChart().getAbsDataset(); relDataset.clear();// w w w .ja v a2s . c o m absDataset.clear(); dataItemList.clear(); Map<String, List<Instance>> resultMap = classificationResult.getResultMap(); if (!resultMap.isEmpty()) { double sum = 0; for (Entry<String, List<Instance>> entry : resultMap.entrySet()) { sum += entry.getValue().size(); } CategoryPlot plot = getClassificationBarChart().getPlot(); CategoryItemRenderer relRenderer = plot.getRenderer(0); CategoryItemRenderer absRenderer = plot.getRenderer(1); ArrayList<String> arrayList = new ArrayList<String>(resultMap.keySet()); Collections.sort(arrayList); for (String transportMode : arrayList) { double abs = resultMap.get(transportMode).size(); double rel = abs / sum * 100; absDataset.addValue(null, "Instances (rel.)", transportMode); absDataset.addValue(abs, "Instances (abs.)", transportMode); relDataset.addValue(rel, "Instances (rel.)", transportMode); relDataset.addValue(null, "Instances (abs.)", transportMode); dataItemList.add(new DataItem(transportMode, rel, abs)); } final LegendItemCollection result = new LegendItemCollection(); result.add(relRenderer.getLegendItem(0, 0)); result.add(absRenderer.getLegendItem(1, 1)); double classified = (sum / classificationResult.getInstanceToTrackSegmentMap().size() * 100); double notClassified = ((classificationResult.getInstanceToTrackSegmentMap().size() - sum) / classificationResult.getInstanceToTrackSegmentMap().size() * 100); getClassifiedInstances().setText(MessageFormat.format("{0, number, 000.00} %", classified)); getNotClassifiedInstances().setText(MessageFormat.format("{0, number, 000.00} %", notClassified)); repaint(); } }
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//w ww .ja v a2s .c o m */ 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); } } } } }