List of usage examples for org.jfree.chart JFreeChart JFreeChart
public JFreeChart(String title, Plot plot)
From source file:com.javafxpert.neuralnetviz.scenario.PlotUtil.java
private static JFreeChart createChart(XYZDataset dataset, double[] mins, double[] maxs, int nPoints, XYDataset xyData) {// w w w. j ava 2 s. c o m NumberAxis xAxis = new NumberAxis("X"); xAxis.setRange(mins[0], maxs[0]); NumberAxis yAxis = new NumberAxis("Y"); yAxis.setRange(mins[1], maxs[1]); XYBlockRenderer renderer = new XYBlockRenderer(); renderer.setBlockWidth((maxs[0] - mins[0]) / (nPoints - 1)); renderer.setBlockHeight((maxs[1] - mins[1]) / (nPoints - 1)); PaintScale scale = new GrayPaintScale(0, 1.0); renderer.setPaintScale(scale); XYPlot plot = new XYPlot(dataset, xAxis, yAxis, renderer); plot.setBackgroundPaint(Color.lightGray); plot.setDomainGridlinesVisible(false); plot.setRangeGridlinesVisible(false); plot.setAxisOffset(new RectangleInsets(5, 5, 5, 5)); JFreeChart chart = new JFreeChart("", plot); chart.getXYPlot().getRenderer().setSeriesVisibleInLegend(0, false); NumberAxis scaleAxis = new NumberAxis("Probability (class 0)"); scaleAxis.setAxisLinePaint(Color.white); scaleAxis.setTickMarkPaint(Color.white); scaleAxis.setTickLabelFont(new Font("Dialog", Font.PLAIN, 7)); PaintScaleLegend legend = new PaintScaleLegend(new GrayPaintScale(), scaleAxis); legend.setStripOutlineVisible(false); legend.setSubdivisionCount(20); legend.setAxisLocation(AxisLocation.BOTTOM_OR_LEFT); legend.setAxisOffset(5.0); legend.setMargin(new RectangleInsets(5, 5, 5, 5)); legend.setFrame(new BlockBorder(Color.red)); legend.setPadding(new RectangleInsets(10, 10, 10, 10)); legend.setStripWidth(10); legend.setPosition(RectangleEdge.LEFT); chart.addSubtitle(legend); ChartUtilities.applyCurrentTheme(chart); plot.setDataset(1, xyData); XYLineAndShapeRenderer renderer2 = new XYLineAndShapeRenderer(); renderer2.setBaseLinesVisible(false); plot.setRenderer(1, renderer2); plot.setDatasetRenderingOrder(DatasetRenderingOrder.FORWARD); return chart; }
From source file:playground.dgrether.analysis.charts.DgAvgDeltaUtilsModeQuantilesChart.java
@Override public JFreeChart createChart() { XYPlot plot = new XYPlot(); ValueAxis xAxis = this.axisBuilder.createValueAxis("% of Population Sorted by Income"); xAxis.setRange(0.0, 102.0);// w w w . j a va2 s . c o m ValueAxis yAxis = this.axisBuilder.createValueAxis("Delta Utils [Utils]"); yAxis.setRange(-0.05, 0.3); plot.setDomainAxis(xAxis); plot.setRangeAxis(yAxis); DgColorScheme colorScheme = new DgColorScheme(); XYItemRenderer renderer2; renderer2 = new XYLineAndShapeRenderer(true, true); plot.setDataset(0, this.dataset); for (int i = 0; i <= 3; i++) { renderer2.setSeriesStroke(i, new BasicStroke(2.0f)); renderer2.setSeriesOutlineStroke(i, new BasicStroke(3.0f)); renderer2.setSeriesPaint(i, colorScheme.getColor(i + 1, "a")); } plot.setRenderer(0, renderer2); JFreeChart chart = new JFreeChart("", plot); chart.setBackgroundPaint(ChartColor.WHITE); chart.getLegend().setItemFont(this.axisBuilder.getAxisFont()); chart.setTextAntiAlias(true); return chart; }
From source file:playground.dgrether.analysis.charts.DgAvgDeltaUtilsGroupChart.java
public JFreeChart createChart() { XYPlot plot = new XYPlot(); ValueAxis xAxis = this.axisBuilder.createValueAxis("Income [Chf / Year]"); ValueAxis yAxis = this.axisBuilder.createValueAxis("Delta Utils [Utils]"); plot.setDomainAxis(xAxis);/*w w w . ja v a 2 s . co m*/ plot.setRangeAxis(yAxis); DgColorScheme colorScheme = new DgColorScheme(); XYItemRenderer renderer2; renderer2 = new XYLineAndShapeRenderer(true, true); renderer2.setSeriesItemLabelsVisible(0, true); renderer2.setSeriesItemLabelGenerator(0, this.labelGenerator); plot.setDataset(0, this.dataset); renderer2.setSeriesStroke(0, new BasicStroke(2.0f)); renderer2.setSeriesOutlineStroke(0, new BasicStroke(3.0f)); renderer2.setSeriesPaint(0, colorScheme.getColor(1, "a")); plot.setRenderer(0, renderer2); JFreeChart chart = new JFreeChart("", plot); chart.setBackgroundPaint(ChartColor.WHITE); chart.getLegend().setItemFont(this.axisBuilder.getAxisFont()); chart.setTextAntiAlias(true); return chart; }
From source file:org.gephi.ui.utils.ChartsUtils.java
/** * Build a new box-plot from an array of numbers using a default title and yLabel. * String dataName will be used for xLabel. * @param numbers Numbers for building box-plot * @param dataName Name of the numbers data * @return Prepared box-plot//from w w w . j av a2 s .c o m */ public static JFreeChart buildBoxPlot(final Number[] numbers, final String dataName) { if (numbers == null || numbers.length == 0) { return null; } DefaultBoxAndWhiskerCategoryDataset dataset = new DefaultBoxAndWhiskerCategoryDataset(); final ArrayList<Number> list = new ArrayList<Number>(); list.addAll(Arrays.asList(numbers)); final String valuesString = getMessage("ChartsUtils.report.box-plot.values"); dataset.add(list, valuesString, ""); final BoxAndWhiskerRenderer renderer = new BoxAndWhiskerRenderer(); renderer.setMeanVisible(false); renderer.setFillBox(false); renderer.setMaximumBarWidth(0.5); final CategoryAxis xAxis = new CategoryAxis(dataName); final NumberAxis yAxis = new NumberAxis(getMessage("ChartsUtils.report.box-plot.values-range")); yAxis.setAutoRangeIncludesZero(false); renderer.setBaseToolTipGenerator(new BoxAndWhiskerToolTipGenerator()); final CategoryPlot plot = new CategoryPlot(dataset, xAxis, yAxis, renderer); plot.setRenderer(renderer); JFreeChart boxPlot = new JFreeChart(getMessage("ChartsUtils.report.box-plot.title"), plot); return boxPlot; }
From source file:projects.tgas.exec.HrDiagram.java
/** * Plot the HR diagram chart from the given data. * @param series/*from w w w. j a v a 2s. co m*/ * A {@link XYSeries} containing the HR diagram data. * @return * A {@link JFreeChart} containing the plot. */ private static JFreeChart getHrChart(XYSeries series) { XYSeriesCollection hrData = new XYSeriesCollection(); hrData.addSeries(series); // Set up the renderer XYLineAndShapeRenderer hrRenderer = new XYLineAndShapeRenderer(); hrRenderer.setSeriesLinesVisible(0, false); hrRenderer.setSeriesShapesVisible(0, true); hrRenderer.setSeriesShape(0, new Ellipse2D.Double(-0.5, -0.5, 1, 1)); // Configure axes NumberAxis xAxis = new NumberAxis("B - V [mag]"); xAxis.setRange(-0.5, 2.25); NumberAxis yAxis = new NumberAxis("G [mag]"); yAxis.setInverted(true); yAxis.setRange(-5, 13); // Configure plot XYPlot xyplot = new XYPlot(hrData, xAxis, yAxis, hrRenderer); xyplot.setBackgroundPaint(Color.white); JFreeChart hrChart = new JFreeChart("HR diagram of TGAS stars", xyplot); hrChart.removeLegend(); hrChart.setBackgroundPaint(Color.white); return hrChart; }
From source file:playground.dgrether.signalsystems.analysis.DgGreenSplitPerIterationGraph.java
public JFreeChart createChart() { XYPlot plot = new XYPlot(); ValueAxis xAxis = this.axisBuilder.createValueAxis("Iteration"); xAxis.setRange(this.controllerConfig.getFirstIteration(), this.controllerConfig.getLastIteration() + 2); ValueAxis yAxis = this.axisBuilder.createValueAxis("GreenTime"); // yAxis.setRange(-0.05, 0.3); // xAxis.setVisible(false); // xAxis.setFixedAutoRange(1.0); plot.setDomainAxis(xAxis);// w ww . j ava 2 s . c o m plot.setRangeAxis(yAxis); DgColorScheme colorScheme = new DgColorScheme(); XYItemRenderer renderer2; renderer2 = new XYLineAndShapeRenderer(true, true); renderer2.setSeriesItemLabelsVisible(0, true); // renderer2.setSeriesItemLabelGenerator(0, this.labelGenerator); plot.setDataset(0, this.getDataset()); renderer2.setSeriesStroke(0, new BasicStroke(2.0f)); renderer2.setSeriesOutlineStroke(0, new BasicStroke(3.0f)); renderer2.setSeriesPaint(0, colorScheme.getColor(1, "a")); renderer2.setSeriesStroke(1, new BasicStroke(2.0f)); renderer2.setSeriesOutlineStroke(1, new BasicStroke(3.0f)); renderer2.setSeriesPaint(1, colorScheme.getColor(2, "a")); renderer2.setSeriesStroke(2, new BasicStroke(2.0f)); renderer2.setSeriesOutlineStroke(2, new BasicStroke(3.0f)); renderer2.setSeriesPaint(2, colorScheme.getColor(3, "a")); renderer2.setSeriesStroke(3, new BasicStroke(2.0f)); renderer2.setSeriesOutlineStroke(3, new BasicStroke(3.0f)); renderer2.setSeriesPaint(3, colorScheme.getColor(4, "a")); plot.setRenderer(0, renderer2); JFreeChart chart = new JFreeChart("", plot); chart.setBackgroundPaint(ChartColor.WHITE); chart.getLegend().setItemFont(this.axisBuilder.getAxisFont()); chart.setTextAntiAlias(true); // chart.removeLegend(); return chart; }
From source file:org.pentaho.chart.plugin.jfreechart.chart.dial.JFreeDialChartGenerator.java
protected JFreeChart doCreateChart(final ChartDocumentContext chartDocContext, final ChartTableModel data) { final ChartDocument chartDocument = chartDocContext.getChartDocument(); // ~ plot ======================================================================================================== DialPlot dialPlot = new SquareDialPlot(); // ~ data ======================================================================================================== // ~ params begin final ValueDataset dataset = (ValueDataset) datasetGeneratorFactory.createDataset(chartDocContext, data); // ~ params end dialPlot.setDataset(dataset);//from www .j a v a 2s .c om // ~ frame type: either circular or arc ========================================================================== setDialFrame(chartDocument, dialPlot); // ~ annotation ================================================================================================== setDialTextAnnotation(chartDocument, dialPlot); // ~ value indicator: prints value of dial as text =============================================================== setDialValueIndicator(chartDocument, dialPlot); // ~ ticks ======================================================================================================= setDialScale(chartDocument, dialPlot); // ~ cap over pointer ============================================================================================ setDialCap(chartDocument, dialPlot); // ~ ranges ====================================================================================================== setDialRange(chartDocument, dialPlot); // ~ background ================================================================================================== setDialBackground(chartDocument, dialPlot); // ~ pointer: either pin or pointer ============================================================================== setDialPointer(chartDocument, dialPlot); JFreeChart chart = new JFreeChart(getTitle(chartDocument), dialPlot); return chart; }
From source file:raspihomeapp.ParamForm.java
public void Plotxy() { XYSeries series1 = new XYSeries("Punkte1"); series1.add(5, 0);// w w w. j a v a 2 s .c om series1.add(6, 6); series1.add(7, 11); series1.add(8, 22); series1.add(10, 55); XYSeries series2 = new XYSeries("Punkte2"); series2.add(5, 2); series2.add(6, 3); series2.add(7, 4); // Hinzufuegen von series1 und series2 zu der Datenmenge dataset XYSeriesCollection dataset2 = new XYSeriesCollection(); dataset2.addSeries(series1); dataset2.addSeries(series2); XYSplineRenderer dot = new XYSplineRenderer(); NumberAxis xax = new NumberAxis("x"); NumberAxis yax = new NumberAxis("y"); //xax.setLabelPaint(Color.WHITE); DateAxis taxis = new DateAxis("t"); taxis.setDateFormatOverride(new SimpleDateFormat("dd-MM")); XYPlot plot = new XYPlot(dataset2, taxis, yax, dot); //plot.setBackgroundPaint(Color.BLACK); //plot.setRangeGridlinePaint(Color.GRAY); JFreeChart chart2 = new JFreeChart(" Test ", plot); //chart2.setBackgroundPaint(Color.BLACK); ChartPanel chartPanel2 = new ChartPanel(chart2); chartPanel2.setMouseZoomable(true, false); jPanel4.setLayout(new BorderLayout()); jPanel4.add(chartPanel2, BorderLayout.CENTER); //setContentPane(chartPanel2); }
From source file:org.kepler.plotting.Plot.java
private void createChart() { boolean includeLegend = false; boolean tooltips = true; boolean urls = false; // chart = ChartFactory.createXYLineChart("Chart Title", "Domain label", "Value label", dataset, PlotOrientation.VERTICAL, includeLegend, tooltips, urls); plot = new XYPlot(dataset, new DateAxis("X Axis"), new NumberAxis("Y Axis"), new DefaultXYItemRenderer()); chart = new JFreeChart("Chart Title", plot); }
From source file:org.jfree.chart.demo.DualAxisDemo5.java
/** * Creates a chart./*from w ww . ja va 2 s . co m*/ * * @param dataset1 the first dataset. * @param dataset2 the second dataset. * * @return A chart. */ private JFreeChart createChart(final CategoryDataset dataset1, final CategoryDataset dataset2) { final CategoryAxis domainAxis = new CategoryAxis("Category"); final NumberAxis rangeAxis = new NumberAxis("Value"); final BarRenderer renderer1 = new BarRenderer(); final CategoryPlot plot = new CategoryPlot(dataset1, domainAxis, rangeAxis, renderer1) { /** * Override the getLegendItems() method to handle special case. * * @return the legend items. */ public LegendItemCollection getLegendItems() { final LegendItemCollection result = new LegendItemCollection(); final CategoryDataset data = getDataset(); if (data != null) { final CategoryItemRenderer r = getRenderer(); if (r != null) { final LegendItem item = r.getLegendItem(0, 0); result.add(item); } } // the JDK 1.2.2 compiler complained about the name of this // variable final CategoryDataset dset2 = getDataset(1); if (dset2 != null) { final CategoryItemRenderer renderer2 = getRenderer(1); if (renderer2 != null) { final LegendItem item = renderer2.getLegendItem(1, 1); result.add(item); } } return result; } }; final JFreeChart chart = new JFreeChart("Dual Axis Bar Chart", plot); chart.setBackgroundPaint(Color.white); // chart.getLegend().setAnchor(Legend.SOUTH); plot.setBackgroundPaint(new Color(0xEE, 0xEE, 0xFF)); plot.setDomainAxisLocation(AxisLocation.BOTTOM_OR_RIGHT); plot.setDataset(1, dataset2); plot.mapDatasetToRangeAxis(1, 1); final ValueAxis axis2 = new NumberAxis("Secondary"); plot.setRangeAxis(1, axis2); plot.setRangeAxisLocation(1, AxisLocation.BOTTOM_OR_RIGHT); final BarRenderer renderer2 = new BarRenderer(); plot.setRenderer(1, renderer2); return chart; }