List of usage examples for org.jfree.chart.plot CategoryPlot mapDatasetToRangeAxis
public void mapDatasetToRangeAxis(int index, int axisIndex)
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:org.jfree.chart.demo.OverlaidBarChartDemo1.java
public static JFreeChart createChart() { DefaultCategoryDataset dataset1 = new DefaultCategoryDataset(); dataset1.addValue(1.0D, "S1", "Category 1"); dataset1.addValue(4D, "S1", "Category 2"); dataset1.addValue(3D, "S1", "Category 3"); dataset1.addValue(5D, "S1", "Category 4"); dataset1.addValue(5D, "S1", "Category 5"); dataset1.addValue(7D, "S1", "Category 6"); dataset1.addValue(7D, "S1", "Category 7"); dataset1.addValue(8D, "S1", "Category 8"); dataset1.addValue(5D, "S2", "Category 1"); dataset1.addValue(7D, "S2", "Category 2"); dataset1.addValue(6D, "S2", "Category 3"); dataset1.addValue(8D, "S2", "Category 4"); dataset1.addValue(4D, "S2", "Category 5"); dataset1.addValue(4D, "S2", "Category 6"); dataset1.addValue(2D, "S2", "Category 7"); dataset1.addValue(1.0D, "S2", "Category 8"); DefaultCategoryDataset dataset2 = new DefaultCategoryDataset(); dataset2.addValue(9D, "T1", "Category 1"); dataset2.addValue(7D, "T1", "Category 2"); dataset2.addValue(2D, "T1", "Category 3"); dataset2.addValue(6D, "T1", "Category 4"); dataset2.addValue(6D, "T1", "Category 5"); dataset2.addValue(9D, "T1", "Category 6"); dataset2.addValue(5D, "T1", "Category 7"); dataset2.addValue(4D, "T1", "Category 8"); DefaultCategoryDataset dataset3 = new DefaultCategoryDataset(); dataset3.addValue(94D, "R1", "Category 1"); dataset3.addValue(75D, "R1", "Category 2"); dataset3.addValue(22D, "R1", "Category 3"); dataset3.addValue(74D, "R1", "Category 4"); dataset3.addValue(83D, "R1", "Category 5"); dataset3.addValue(9D, "R1", "Category 6"); dataset3.addValue(23D, "R1", "Category 7"); dataset3.addValue(98D, "R1", "Category 8"); ///*w ww. j a v a2 s .co m*/ StandardCategoryItemLabelGenerator standardcategoryitemlabelgenerator = new StandardCategoryItemLabelGenerator(); BarRenderer renderer1 = new BarRenderer(); renderer1.setBaseItemLabelGenerator(standardcategoryitemlabelgenerator); renderer1.setBaseItemLabelsVisible(true); LineAndShapeRenderer renderer2 = new LineAndShapeRenderer(); LineAndShapeRenderer renderer3 = new LineAndShapeRenderer(); //plot CategoryPlot plot = new CategoryPlot(); plot.setDataset(dataset1); plot.setRenderer(renderer1); plot.setDataset(1, dataset2); plot.setRenderer(1, renderer2); plot.setDataset(2, dataset3); plot.setRenderer(2, renderer3); plot.setDomainAxis(new CategoryAxis("Category")); //more rangeAxis plot.setRangeAxis(new NumberAxis("Value")); plot.setRangeAxis(1, new NumberAxis("Axis 2")); plot.mapDatasetToRangeAxis(2, 1); // plot.setOrientation(PlotOrientation.VERTICAL); plot.setRangeGridlinesVisible(true); plot.setDomainGridlinesVisible(true); plot.setDatasetRenderingOrder(DatasetRenderingOrder.FORWARD); plot.getDomainAxis().setCategoryLabelPositions(CategoryLabelPositions.UP_45); //chart JFreeChart chart = new JFreeChart(plot); chart.setTitle("Overlaid Bar Chart"); return chart; }
From source file:es.bsc.autonomic.powermodeller.graphics.TotalPowerVsPredictionDecomposed.java
private static JFreeChart createChart() { ////from w ww .j a va2 s .co m DefaultCategoryDataset Pactual = jFreeChartDataSets.get(CoreConfiguration.PACTUAL_LABEL); DefaultCategoryDataset Ppredicted = jFreeChartDataSets.get(CoreConfiguration.PPREDICTED_LABEL); StandardCategoryItemLabelGenerator standardcategoryitemlabelgenerator = new StandardCategoryItemLabelGenerator(); LineAndShapeRenderer renderer1 = new LineAndShapeRenderer(); /*renderer1.setBaseItemLabelGenerator(standardcategoryitemlabelgenerator); renderer1.setBaseItemLabelsVisible(true);*/ StackedAreaRenderer renderer2 = new StackedAreaRenderer(); //plot CategoryPlot plot = new CategoryPlot(); plot.setDataset(Ppredicted); plot.setRenderer(renderer2); plot.setDataset(1, Pactual); plot.setRenderer(1, renderer1); CategoryAxis axis = new CategoryAxis("Sample"); axis.setTickLabelsVisible(false); axis.setCategoryMargin(0.0); plot.setDomainAxis(axis); //more rangeAxis plot.setRangeAxis(new NumberAxis("Power (Watts)")); plot.mapDatasetToRangeAxis(2, 1); // plot.setOrientation(PlotOrientation.VERTICAL); plot.setRangeGridlinesVisible(true); plot.setDomainGridlinesVisible(true); plot.setDatasetRenderingOrder(DatasetRenderingOrder.FORWARD); plot.getDomainAxis().setCategoryLabelPositions(CategoryLabelPositions.UP_45); //chart JFreeChart chart = new JFreeChart(plot); chart.setTitle(NAME); return chart; }
From source file:soap.ui.stats.OverLaidBarChartFactory.java
public static JFreeChart createDualBarAndLineDiagram(String title, String categoryAxisLabel, String valueAxisLabel, CategoryDataset barDiagramDataset, LinkedList lineDiagramDatasets) { CategoryPlot plot = new CategoryPlot(); int inc = 0;/*from w w w .ja v a2s. c o m*/ BarRenderer barRenderer = null; if (barDiagramDataset != null) { plot.setDataset(barDiagramDataset); barRenderer = new BarRenderer3D(); barRenderer.setToolTipGenerator(new StandardCategoryToolTipGenerator()); plot.setRenderer(barRenderer); inc = 1; plot.setDomainAxis(new CategoryAxis3D(categoryAxisLabel)); plot.setRangeAxis(new NumberAxis3D(valueAxisLabel)); } else { plot.setDomainAxis(new CategoryAxis(categoryAxisLabel)); plot.setRangeAxis(new NumberAxis(valueAxisLabel)); } plot.mapDatasetToRangeAxis(0, 0); plot.setDomainAxisLocation(AxisLocation.BOTTOM_OR_LEFT); plot.setRangeAxisLocation(AxisLocation.TOP_OR_LEFT); CategoryItemRenderer renderers[] = new LineAndShapeRenderer[lineDiagramDatasets.size()]; for (int i = 0; i < lineDiagramDatasets.size(); i++) { CategoryDataset lineDiagramDataset = (CategoryDataset) lineDiagramDatasets.get(i); plot.setDataset(i + inc, lineDiagramDataset); plot.mapDatasetToRangeAxis(i + inc, 0); if (barDiagramDataset != null && i < barDiagramDataset.getRowCount()) { renderers[i] = new LineAndShapeRendererMapToBar(barRenderer, i); } else { renderers[i] = new LineAndShapeRenderer(); } renderers[i].setToolTipGenerator(new StandardCategoryToolTipGenerator()); renderers[i].setSeriesStroke(0, new BasicStroke(1.5f)); renderers[i].setSeriesStroke(1, new BasicStroke(1.5f)); plot.setRenderer(i + inc, renderers[i]); } CategoryDataset dataset; if (lineDiagramDatasets.size() > 0) dataset = (CategoryDataset) lineDiagramDatasets.get(0); else dataset = barDiagramDataset; for (int i = 0; i < dataset.getColumnCount(); i++) plot.getDomainAxis().addCategoryLabelToolTip(dataset.getColumnKey(i), (String) dataset.getColumnKey(i)); plot.setRangeGridlinePaint(Color.black); plot.setDatasetRenderingOrder(DatasetRenderingOrder.FORWARD); JFreeChart chart = new JFreeChart(plot); chart.setTitle(title); chart.setLegend(new StandardLegend()); return chart; }
From source file:org.jfree.chart.demo.ParetoChartDemo1.java
public static JFreeChart createChart(CategoryDataset acategorydataset[]) { JFreeChart jfreechart = ChartFactory.createBarChart("Freshmeat Software Projects", "Language", "Projects", acategorydataset[0], PlotOrientation.VERTICAL, true, true, false); jfreechart.addSubtitle(new TextTitle("By Programming Language")); jfreechart.addSubtitle(new TextTitle("As at 5 March 2003")); jfreechart.setBackgroundPaint(Color.white); CategoryPlot categoryplot = (CategoryPlot) jfreechart.getPlot(); categoryplot.setBackgroundPaint(Color.lightGray); categoryplot.setRangeGridlinePaint(Color.white); CategoryAxis categoryaxis = categoryplot.getDomainAxis(); categoryaxis.setLowerMargin(0.02D);/*from ww w . j a v a 2 s . c o m*/ categoryaxis.setUpperMargin(0.02D); categoryaxis.setCategoryLabelPositions(CategoryLabelPositions.UP_90); NumberAxis numberaxis = (NumberAxis) categoryplot.getRangeAxis(); numberaxis.setStandardTickUnits(NumberAxis.createIntegerTickUnits()); LineAndShapeRenderer lineandshaperenderer = new LineAndShapeRenderer(); NumberAxis numberaxis1 = new NumberAxis("Percent"); numberaxis1.setNumberFormatOverride(NumberFormat.getPercentInstance()); categoryplot.setRangeAxis(1, numberaxis1); categoryplot.setDataset(1, acategorydataset[1]); categoryplot.setRenderer(1, lineandshaperenderer); categoryplot.mapDatasetToRangeAxis(1, 1); categoryplot.setDatasetRenderingOrder(DatasetRenderingOrder.FORWARD); return jfreechart; }
From source file:cmpt305.lab3.gui.controllers.CompareGraphController.java
public CompareGraphController(User main, User... users) { this.main = main; BAR_GRAPH = new DefaultCategoryDataset(); COMPARE_GRAPH = new DefaultCategoryDataset(); JFreeChart t = ChartFactory.createBarChart("SteamWeb", "User", "Time Spent in Each Genre", BAR_GRAPH); addData(main);//from www . jav a 2s . c om if (users != null && users.length > 0) { Arrays.asList(users).stream().filter(u -> !u.equals(main)).distinct().forEach(u -> { addData(u); COMPARE.add(u); }); } CategoryPlot plot = t.getCategoryPlot(); plot.setDataset(1, COMPARE_GRAPH); plot.mapDatasetToRangeAxis(1, 1); plot.setRangeAxis(1, new NumberAxis("Compatability")); LineAndShapeRenderer rend = new LineAndShapeRenderer(); rend.setBaseToolTipGenerator((cd, x, y) -> String.format("%s: %f", cd.getColumnKey(y), cd.getValue(x, y))); rend.setSeriesVisibleInLegend(0, false); plot.setRenderer(1, rend); VIEW = new ChartPanel(t); setSize(); }
From source file:org.jfree.chart.demo.DualAxisDemo6.java
private static JFreeChart createChart(CategoryDataset categorydataset, CategoryDataset categorydataset1) { CategoryAxis categoryaxis = new CategoryAxis("Category"); NumberAxis numberaxis = new NumberAxis("Value"); GroupedStackedBarRenderer groupedstackedbarrenderer = new GroupedStackedBarRenderer(); KeyToGroupMap keytogroupmap = new KeyToGroupMap("G1"); keytogroupmap.mapKeyToGroup("Series 1A", "G1"); keytogroupmap.mapKeyToGroup("Series 1B", "G1"); keytogroupmap.mapKeyToGroup("NOTHING", "G2"); groupedstackedbarrenderer.setSeriesToGroupMap(keytogroupmap); CategoryPlot categoryplot = new CategoryPlot(categorydataset, categoryaxis, numberaxis, groupedstackedbarrenderer) { private static final long serialVersionUID = 1L; public LegendItemCollection getLegendItems() { LegendItemCollection legenditemcollection = new LegendItemCollection(); legenditemcollection.addAll(getRenderer().getLegendItems()); CategoryDataset categorydataset2 = getDataset(1); if (categorydataset2 != null) { CategoryItemRenderer categoryitemrenderer = getRenderer(1); if (categoryitemrenderer != null) { org.jfree.chart.LegendItem legenditem = categoryitemrenderer.getLegendItem(1, 1); legenditemcollection.add(legenditem); }// www. j a v a2 s. c o m } return legenditemcollection; } }; JFreeChart jfreechart = new JFreeChart("Dual Axis Bar Chart", categoryplot); categoryplot.setDomainAxisLocation(AxisLocation.BOTTOM_OR_RIGHT); categoryplot.setDataset(1, categorydataset1); categoryplot.mapDatasetToRangeAxis(1, 1); NumberAxis numberaxis1 = new NumberAxis("Secondary"); categoryplot.setRangeAxis(1, numberaxis1); categoryplot.setRangeAxisLocation(1, AxisLocation.BOTTOM_OR_RIGHT); BarRenderer barrenderer = new BarRenderer(); categoryplot.setRenderer(1, barrenderer); ChartUtilities.applyCurrentTheme(jfreechart); return jfreechart; }
From source file:org.amanzi.awe.charts.builder.CategoryChartBuilder.java
@Override protected void setSecondAxisForPlot(CategoryPlot plot, Dataset dataset, LineAndShapeRenderer subRenderer, NumberAxis secondAxis) {//from w w w . j ava2s . c o m plot.setDataset(1, (CategoryDataset) dataset); plot.mapDatasetToRangeAxis(1, 1); plot.setRangeAxis(1, secondAxis); plot.setRangeAxisLocation(1, AxisLocation.TOP_OR_LEFT); plot.setRenderer(1, subRenderer); }
From source file:org.matsim.counts.algorithms.graphs.BiasErrorGraph.java
@Override public JFreeChart createChart(final int nbr) { DefaultCategoryDataset dataset0 = new DefaultCategoryDataset(); DefaultCategoryDataset dataset1 = new DefaultCategoryDataset(); this.errorStats = new ComparisonErrorStatsCalculator(this.ccl_); double[] meanRelError = errorStats.getMeanRelError(); // double[] meanAbsError = errorStats.getMeanAbsError(); double[] meanAbsBias = errorStats.getMeanAbsBias(); for (int h = 0; h < 24; h++) { dataset0.addValue(meanRelError[h], "Mean rel error", Integer.toString(h + 1)); // dataset1.addValue(meanAbsError[h], "Mean abs error", Integer.toString(h + 1)); dataset1.addValue(meanAbsBias[h], "Mean abs bias", Integer.toString(h + 1)); }// w w w .j ava 2 s . co m this.chart_ = ChartFactory.createLineChart("", "Hour", "Mean rel error [%]", dataset0, PlotOrientation.VERTICAL, true, // legend? true, // tooltips? false // URLs? ); CategoryPlot plot = this.chart_.getCategoryPlot(); plot.setDomainAxisLocation(AxisLocation.BOTTOM_OR_RIGHT); plot.setDataset(1, dataset1); plot.mapDatasetToRangeAxis(1, 1); final LineAndShapeRenderer renderer = new LineAndShapeRenderer(); renderer.setSeriesToolTipGenerator(0, new StandardCategoryToolTipGenerator()); plot.setRenderer(0, renderer); final CategoryAxis axis1 = new CategoryAxis("Hour"); axis1.setTickLabelFont(new Font("SansSerif", Font.PLAIN, 7)); plot.setDomainAxis(axis1); // final ValueAxis axis2 = new NumberAxis("Mean abs {bias, error} [veh/h]"); final ValueAxis axis2 = new NumberAxis("Mean abs bias [veh/h]"); plot.setRangeAxis(1, axis2); final ValueAxis axis3 = plot.getRangeAxis(0); axis3.setRange(0.0, 100.0); final LineAndShapeRenderer renderer2 = new LineAndShapeRenderer(); renderer2.setSeriesToolTipGenerator(0, new StandardCategoryToolTipGenerator()); renderer2.setSeriesToolTipGenerator(1, new StandardCategoryToolTipGenerator()); // renderer2.setSeriesPaint(0, Color.black); plot.setRenderer(1, renderer2); plot.setDatasetRenderingOrder(DatasetRenderingOrder.REVERSE); return this.chart_; }
From source file:org.matsim.counts.algorithms.graphs.BiasNormalizedErrorGraph.java
@Override public JFreeChart createChart(final int nbr) { DefaultCategoryDataset dataset0 = new DefaultCategoryDataset(); DefaultCategoryDataset dataset1 = new DefaultCategoryDataset(); this.errorStats = new ComparisonErrorStatsCalculator(this.ccl_); double[] meanNormRelError = this.errorStats.getMeanNormRelError(); // double[] meanAbsError = this.errorStats.getMeanAbsError(); double[] meanBias = this.errorStats.getMeanBias(); for (int h = 0; h < 24; h++) { meanNormRelError[h] *= 100;//w w w .j a va 2 s. com dataset0.addValue(meanNormRelError[h], "Mean norm rel error", Integer.toString(h + 1)); // dataset1.addValue(meanAbsError[h], "Mean abs error", Integer.toString(h + 1)); dataset1.addValue(meanBias[h], "Mean bias", Integer.toString(h + 1)); } this.chart_ = ChartFactory.createLineChart("", "Hour", "Mean norm rel error [%]", dataset0, PlotOrientation.VERTICAL, true, // legend? true, // tooltips? false // URLs? ); CategoryPlot plot = this.chart_.getCategoryPlot(); plot.setDomainAxisLocation(AxisLocation.BOTTOM_OR_RIGHT); plot.setDataset(1, dataset1); plot.mapDatasetToRangeAxis(1, 1); final LineAndShapeRenderer renderer = new LineAndShapeRenderer(); renderer.setSeriesToolTipGenerator(0, new StandardCategoryToolTipGenerator()); plot.setRenderer(0, renderer); final CategoryAxis axis1 = new CategoryAxis("Hour"); axis1.setTickLabelFont(new Font("SansSerif", Font.PLAIN, 7)); plot.setDomainAxis(axis1); // final ValueAxis axis2 = new NumberAxis("Mean abs {bias, error} [veh/h]"); final ValueAxis axis2 = new NumberAxis("Mean bias [veh/h]"); plot.setRangeAxis(1, axis2); final ValueAxis axis3 = plot.getRangeAxis(0); axis3.setRange(0.0, 100.0); final LineAndShapeRenderer renderer2 = new LineAndShapeRenderer(); renderer2.setSeriesToolTipGenerator(0, new StandardCategoryToolTipGenerator()); renderer2.setSeriesToolTipGenerator(1, new StandardCategoryToolTipGenerator()); // renderer2.setSeriesPaint(0, Color.black); plot.setRenderer(1, renderer2); plot.setDatasetRenderingOrder(DatasetRenderingOrder.REVERSE); return this.chart_; }