List of usage examples for org.jfree.chart ChartFactory createXYLineChart
public static JFreeChart createXYLineChart(String title, String xAxisLabel, String yAxisLabel, XYDataset dataset, PlotOrientation orientation, boolean legend, boolean tooltips, boolean urls)
From source file:imageprocessingproject.ImageHistogram.java
public static JFreeChart plotHistogram(BufferedImage image) { createHistogram(image);/*from w w w.java 2 s. com*/ final XYSeries series = new XYSeries("Histogram Data"); for (int i = 0; i < histogram.length; i++) { series.add(i, histogram[i]); } final XYSeriesCollection data = new XYSeriesCollection(series); final JFreeChart chart = ChartFactory.createXYLineChart("Image Histogram", "intensity", "PDF", data, PlotOrientation.VERTICAL, true, true, false); return chart; }
From source file:org.matsim.contrib.dvrp.util.chart.RouteCharts.java
public static JFreeChart chartRoutesByStatus(List<? extends Vehicle> vehicles) { CoordDataset nData = new CoordDataset(); for (int i = 0; i < vehicles.size(); i++) { Schedule schedule = vehicles.get(i).getSchedule(); Map<TaskStatus, CoordSource> vsByStatus = createLinkSourceByStatus(schedule); nData.addSeries(i + "-PR", vsByStatus.get(TaskStatus.PERFORMED)); nData.addSeries(i + "-ST", vsByStatus.get(TaskStatus.STARTED)); nData.addSeries(i + "-PL", vsByStatus.get(TaskStatus.PLANNED)); }//from w w w .j ava 2s .c o m JFreeChart chart = ChartFactory.createXYLineChart("Routes", "X", "Y", nData, PlotOrientation.VERTICAL, false, true, false); XYPlot plot = (XYPlot) chart.getPlot(); plot.setRangeGridlinesVisible(false); plot.setDomainGridlinesVisible(false); plot.setBackgroundPaint(Color.white); NumberAxis yAxis = (NumberAxis) plot.getRangeAxis(); yAxis.setAutoRangeIncludesZero(false); XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) plot.getRenderer(); renderer.setSeriesShapesVisible(0, true); renderer.setSeriesLinesVisible(0, false); renderer.setSeriesItemLabelsVisible(0, true); renderer.setBaseItemLabelGenerator(new LabelGenerator()); Paint[] paints = DefaultDrawingSupplier.DEFAULT_PAINT_SEQUENCE; Shape[] shapes = DefaultDrawingSupplier.DEFAULT_SHAPE_SEQUENCE; for (int i = 0; i < vehicles.size(); i++) { int s = 3 * i; renderer.setSeriesItemLabelsVisible(s + 1, true); renderer.setSeriesItemLabelsVisible(s + 2, true); renderer.setSeriesItemLabelsVisible(s + 3, true); renderer.setSeriesShapesVisible(s + 1, true); renderer.setSeriesShapesVisible(s + 2, true); renderer.setSeriesShapesVisible(s + 3, true); renderer.setSeriesLinesVisible(s + 1, true); renderer.setSeriesLinesVisible(s + 2, true); renderer.setSeriesLinesVisible(s + 3, true); renderer.setSeriesPaint(s + 1, paints[(i + 1) % paints.length]); renderer.setSeriesPaint(s + 2, paints[(i + 1) % paints.length]); renderer.setSeriesPaint(s + 3, paints[(i + 1) % paints.length]); renderer.setSeriesShape(s + 1, shapes[(i + 1) % shapes.length]); renderer.setSeriesShape(s + 2, shapes[(i + 1) % shapes.length]); renderer.setSeriesShape(s + 3, shapes[(i + 1) % shapes.length]); renderer.setSeriesStroke(s + 2, new BasicStroke(3)); renderer.setSeriesStroke(s + 3, new BasicStroke(1, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND, 1, new float[] { 5f, 5f }, 0)); } return chart; }
From source file:com.heatonresearch.aifh.examples.rbf.LearnIrisAnnealROC.java
public LearnIrisAnnealROC() { this.setSize(640, 480); this.setDefaultCloseOperation(EXIT_ON_CLOSE); this.setTitle("Iris Classify ROC"); Container content = this.getContentPane(); content.setLayout(new BorderLayout()); this.dataset = new XYSeriesCollection(); this.dataSeries1 = new XYSeries("Threshold"); this.dataset.addSeries(this.dataSeries1); final JFreeChart lineChart = ChartFactory.createXYLineChart("Line Chart Demo 6", // chart title FPR, // x axis label TPR, // y axis label this.dataset, // data PlotOrientation.VERTICAL, true, // include legend true, // tooltips false // urls );//from w w w . j a v a 2 s.c om ChartPanel chartPanel = new ChartPanel(lineChart); chartPanel.setPreferredSize(new java.awt.Dimension(560, 367)); content.add(chartPanel, BorderLayout.CENTER); JPanel buttonPanel = new JPanel(); buttonPanel.add(this.buttonAnneal = new JButton("Anneal")); buttonPanel.add(this.buttonReset = new JButton("Reset")); this.buttonAnneal.addActionListener(this); this.buttonReset.addActionListener(this); content.add(buttonPanel, BorderLayout.SOUTH); this.training = loadIrisData(); this.network = new RBFNetwork(4, 4, 1); this.network.reset(new MersenneTwisterGenerateRandom()); final ScoreFunction score = new ScoreRegressionData(this.training); this.trainer = new TrainAnneal(this.network, score); }
From source file:be.vds.jtbdive.client.view.core.dive.profile.DiveProfileChartPanelEditor.java
private Component createChartPanel() { depthSerie = new XYSeries("depth"); XYSeriesCollection depthCollection = new XYSeriesCollection(); depthCollection.addSeries(depthSerie); JFreeChart chart = ChartFactory.createXYLineChart("", I18nResourceManager.sharedInstance().getString("time"), I18nResourceManager.sharedInstance().getString("depth"), depthCollection, PlotOrientation.VERTICAL, true, true, false);//from w ww.jav a 2s .c om plot = chart.getXYPlot(); Paint p = new GradientPaint(0f, 0f, UIAgent.getInstance().getColorWaterBottom(), 200f, 200f, UIAgent.getInstance().getColorWaterSurface(), false); plot.setBackgroundPaint(p); XYAreaRenderer renderer0 = new XYAreaRenderer(); renderer0.setOutline(true); renderer0.setBaseOutlinePaint(UIAgent.getInstance().getColorProfileEdition()); Color baseColor = UIAgent.getInstance().getColorBaseBackground(); renderer0.setSeriesPaint(0, new Color(baseColor.getRed(), baseColor.getGreen(), baseColor.getBlue(), 50)); plot.setRenderer(0, renderer0); dAxis = new NumberAxis(); rAxis = new NumberAxis(); // dAxis.setAutoRange(false); // rAxis.setAutoRange(false); // dAxis.setRange(0, maxTime); // rAxis.setRange(lowestDepth, 0); plot.setDomainAxis(dAxis); plot.setRangeAxis(rAxis); // plot.setRangeCrosshairLockedOnData(false); // plot.setDomainCrosshairLockedOnData(false); ((NumberAxis) plot.getDomainAxis()).setNumberFormatOverride(new MinutesNumberFormat()); panel = new ChartPanel(chart); // panel.addChartMouseListener(new ChartMouseListener() { // // @Override // public void chartMouseMoved(ChartMouseEvent arg0) { // // TODO Auto-generated method stub // // } // // @Override // public void chartMouseClicked(ChartMouseEvent evt) { // // double x = plot.getDomainAxis().java2DToValue( // panel.translateScreenToJava2D( // evt.getTrigger().getPoint()).getX(), // panel.getChartRenderingInfo().getPlotInfo() // .getDataArea(), plot.getDomainAxisEdge()); // // double y = plot.getRangeAxis().java2DToValue( // panel.translateScreenToJava2D( // evt.getTrigger().getPoint()).getY(), // panel.getChartRenderingInfo().getPlotInfo() // .getDataArea(), plot.getRangeAxisEdge()); // // diveProfileEditor.addEntry(x, y, this); // } // }); createDecoWarningCollection(); createAscentTooFastCollection(); createRemainBottomTimeCollection(); createDecoEntriesCollection(); return panel; }
From source file:chart.XYChart.java
public XYChart(String applicationTitle, String chartTitle, double[] xData, double[] YDataAnalitic, double[] YDataNumerical) { super(applicationTitle); JFreeChart xylineChart = ChartFactory.createXYLineChart(chartTitle, "", "", createDataset(xData, YDataAnalitic, YDataNumerical), PlotOrientation.VERTICAL, true, true, false); System.out.println("vvvv"); ChartPanel chartPanel = new ChartPanel(xylineChart); chartPanel.setPreferredSize(new java.awt.Dimension(560, 367)); final XYPlot plot = xylineChart.getXYPlot(); XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer(); renderer.setSeriesPaint(0, Color.RED); renderer.setSeriesPaint(1, Color.GREEN); renderer.setSeriesStroke(0, new BasicStroke(2.0f)); renderer.setSeriesStroke(1, new BasicStroke(2.0f)); plot.setRenderer(renderer);/*w w w.ja v a2s .c o m*/ setContentPane(chartPanel); // panel.removeAll(); // panel.add(chartPanel); // panel.validate(); }
From source file:net.sf.mzmine.modules.visualization.scatterplot.scatterplotchart.ScatterPlotChart.java
public ScatterPlotChart(ScatterPlotTopPanel topPanel, PeakList peakList) { super(null, true); this.peakList = peakList; this.topPanel = topPanel; // initialize the chart by default time series chart from factory chart = ChartFactory.createXYLineChart("", // title "", // x-axis label "", // y-axis label null, // data set PlotOrientation.VERTICAL, // orientation false, // create legend false, // generate tooltips false // generate URLs );// w w w . jav a 2s. c o m chart.setBackgroundPaint(Color.white); setChart(chart); // disable maximum size (we don't want scaling) setMaximumDrawWidth(Integer.MAX_VALUE); setMaximumDrawHeight(Integer.MAX_VALUE); // set the plot properties plot = chart.getXYPlot(); plot.setBackgroundPaint(Color.white); plot.setAxisOffset(new RectangleInsets(5.0, 5.0, 5.0, 5.0)); plot.setDatasetRenderingOrder(DatasetRenderingOrder.FORWARD); plot.setSeriesRenderingOrder(SeriesRenderingOrder.FORWARD); plot.setDomainGridlinePaint(gridColor); plot.setRangeGridlinePaint(gridColor); // Set the domain log axis LogAxis logAxisDomain = new LogAxis(); logAxisDomain.setMinorTickCount(1); logAxisDomain.setNumberFormatOverride(MZmineCore.getConfiguration().getIntensityFormat()); logAxisDomain.setAutoRange(true); plot.setDomainAxis(logAxisDomain); // Set the range log axis LogAxis logAxisRange = new LogAxis(); logAxisRange.setMinorTickCount(1); logAxisRange.setNumberFormatOverride(MZmineCore.getConfiguration().getIntensityFormat()); logAxisRange.setAutoRange(true); plot.setRangeAxis(logAxisRange); // Set crosshair properties plot.setDomainCrosshairVisible(true); plot.setRangeCrosshairVisible(true); plot.setDomainCrosshairPaint(crossHairColor); plot.setRangeCrosshairPaint(crossHairColor); plot.setDomainCrosshairStroke(crossHairStroke); plot.setRangeCrosshairStroke(crossHairStroke); // Create data sets; mainDataSet = new ScatterPlotDataSet(peakList); plot.setDataset(0, mainDataSet); diagonalLineDataset = new DiagonalLineDataset(); plot.setDataset(1, diagonalLineDataset); // Create renderers mainRenderer = new ScatterPlotRenderer(); plot.setRenderer(0, mainRenderer); diagonalLineRenderer = new DiagonalLineRenderer(); plot.setRenderer(1, diagonalLineRenderer); // Set tooltip properties ttm = new ComponentToolTipManager(); ttm.registerComponent(this); setDismissDelay(Integer.MAX_VALUE); setInitialDelay(0); // add items to popup menu TODO: add other Show... items JPopupMenu popupMenu = getPopupMenu(); popupMenu.addSeparator(); GUIUtils.addMenuItem(popupMenu, "Show Chromatogram", this, "TIC"); }
From source file:ANNFileDetect.GraphingClass.java
public JFreeChart RenderFiles(TreeMap finalMap) { XYSeriesCollection ds = new XYSeriesCollection(); Iterator entries = finalMap.entrySet().iterator(); while (entries.hasNext()) { Entry thisentry = (Entry) entries.next(); String key = (String) thisentry.getKey(); TreeMap<Double, Integer> tm = (TreeMap) thisentry.getValue(); XYSeries series = new XYSeries(key); //HashMap<Double, Integer> tmp = finalMap.get(key); for (Map.Entry<Double, Integer> entry : tm.entrySet()) { //ds.addValue(ht.get(tmp), "Times", tmp); series.add(entry.getKey(), entry.getValue()); }//w w w. ja v a2 s .com ds.addSeries(series); } JFreeChart chart = ChartFactory.createXYLineChart("Test graph", "Value", "Times", ds, PlotOrientation.VERTICAL, true, true, false); XYLineAndShapeRenderer rend = (XYLineAndShapeRenderer) chart.getXYPlot().getRenderer(); rend.setBaseShape(new Rectangle(-2, -2, 4, 4)); rend.setBaseShapesVisible(true); rend.setBaseSeriesVisible(true); //rend.setSeriesVisible(i, true); chart.getXYPlot().setRenderer(rend); return chart; }
From source file:net.sf.mzmine.modules.visualization.spectra.SpectraPlot.java
public SpectraPlot(ActionListener masterPlot) { super(null, true); setBackground(Color.white);//from w w w.j a va 2 s . c om setCursor(Cursor.getPredefinedCursor(Cursor.CROSSHAIR_CURSOR)); // initialize the chart by default time series chart from factory chart = ChartFactory.createXYLineChart("", // title "m/z", // x-axis label "Intensity", // y-axis label null, // data set PlotOrientation.VERTICAL, // orientation true, // isotopeFlag, // create legend? true, // generate tooltips? false // generate URLs? ); chart.setBackgroundPaint(Color.white); setChart(chart); // title chartTitle = chart.getTitle(); chartTitle.setMargin(5, 0, 0, 0); chartTitle.setFont(titleFont); chartSubTitle = new TextTitle(); chartSubTitle.setFont(subTitleFont); chartSubTitle.setMargin(5, 0, 0, 0); chart.addSubtitle(chartSubTitle); // legend constructed by ChartFactory LegendTitle legend = chart.getLegend(); legend.setItemFont(legendFont); legend.setFrame(BlockBorder.NONE); // disable maximum size (we don't want scaling) setMaximumDrawWidth(Integer.MAX_VALUE); setMaximumDrawHeight(Integer.MAX_VALUE); setMinimumDrawHeight(0); // set the plot properties plot = chart.getXYPlot(); plot.setBackgroundPaint(Color.white); plot.setAxisOffset(new RectangleInsets(5.0, 5.0, 5.0, 5.0)); // set rendering order plot.setDatasetRenderingOrder(DatasetRenderingOrder.FORWARD); // set grid properties plot.setDomainGridlinePaint(gridColor); plot.setRangeGridlinePaint(gridColor); // set crosshair (selection) properties plot.setDomainCrosshairVisible(false); plot.setRangeCrosshairVisible(false); NumberFormat mzFormat = MZmineCore.getConfiguration().getMZFormat(); NumberFormat intensityFormat = MZmineCore.getConfiguration().getIntensityFormat(); // set the X axis (retention time) properties NumberAxis xAxis = (NumberAxis) plot.getDomainAxis(); xAxis.setNumberFormatOverride(mzFormat); xAxis.setUpperMargin(0.001); xAxis.setLowerMargin(0.001); xAxis.setTickLabelInsets(new RectangleInsets(0, 0, 20, 20)); // set the Y axis (intensity) properties NumberAxis yAxis = (NumberAxis) plot.getRangeAxis(); yAxis.setNumberFormatOverride(intensityFormat); // set focusable state to receive key events setFocusable(true); // register key handlers GUIUtils.registerKeyHandler(this, KeyStroke.getKeyStroke("LEFT"), masterPlot, "PREVIOUS_SCAN"); GUIUtils.registerKeyHandler(this, KeyStroke.getKeyStroke("RIGHT"), masterPlot, "NEXT_SCAN"); GUIUtils.registerKeyHandler(this, KeyStroke.getKeyStroke('+'), this, "ZOOM_IN"); GUIUtils.registerKeyHandler(this, KeyStroke.getKeyStroke('-'), this, "ZOOM_OUT"); // add items to popup menu if (masterPlot instanceof SpectraVisualizerWindow) { JPopupMenu popupMenu = getPopupMenu(); popupMenu.addSeparator(); GUIUtils.addMenuItem(popupMenu, "Toggle centroid/continuous mode", masterPlot, "TOGGLE_PLOT_MODE"); GUIUtils.addMenuItem(popupMenu, "Toggle displaying of data points in continuous mode", masterPlot, "SHOW_DATA_POINTS"); GUIUtils.addMenuItem(popupMenu, "Toggle displaying of peak values", masterPlot, "SHOW_ANNOTATIONS"); GUIUtils.addMenuItem(popupMenu, "Toggle displaying of picked peaks", masterPlot, "SHOW_PICKED_PEAKS"); popupMenu.addSeparator(); GUIUtils.addMenuItem(popupMenu, "Set axes range", masterPlot, "SETUP_AXES"); GUIUtils.addMenuItem(popupMenu, "Set same range to all windows", masterPlot, "SET_SAME_RANGE"); popupMenu.addSeparator(); GUIUtils.addMenuItem(popupMenu, "Add isotope pattern", masterPlot, "ADD_ISOTOPE_PATTERN"); } }
From source file:org.yooreeka.util.gui.XyLogGui.java
public XyLogGui(String title, double[] x, double[] y) { super(title); errMsg = new StringBuilder(); setLoopInt(x.length);//www.ja v a 2s . c om if (checkX(x) && checkY(x.length, y)) { XYSeries xydata = new XYSeries(title); for (int i = 0; i < loopInt; i++) { if (x[i] == C.ZERO_DOUBLE || x[i] < 0) { x[i] = C.SMALL_DOUBLE; } if (y[i] == C.ZERO_DOUBLE || y[i] < 0) { y[i] = C.SMALL_DOUBLE; } xydata.add(x[i], y[i]); } xycollection = new XYSeriesCollection(xydata); final JFreeChart chart = ChartFactory.createXYLineChart(title + " (XY Plot)", "X", "Y", xycollection, PlotOrientation.VERTICAL, true, true, false); final XYPlot plot = chart.getXYPlot(); final NumberAxis domainAxis = new NumberAxis("x"); plot.setDomainAxis(domainAxis); final NumberAxis logRangeAxis = new LogarithmicAxis("Log(y)"); plot.setRangeAxis(logRangeAxis); chart.setBackgroundPaint(Color.white); plot.setOutlinePaint(Color.black); final ChartPanel chartPanel = new ChartPanel(chart); chartPanel.setPreferredSize(new java.awt.Dimension(500, 270)); setContentPane(chartPanel); } else { System.err.println(errMsg.toString()); } }
From source file:org.encog.workbench.dialogs.training.ChartPane.java
/** * Create the initial chart.//from w w w . jav a 2 s . c om * @return The chart. */ private JFreeChart createChart() { this.chart = ChartFactory.createXYLineChart(null, "Iteration", "Current Error", this.dataset1, PlotOrientation.VERTICAL, true, true, false); final XYPlot plot = (XYPlot) this.chart.getPlot(); plot.setOrientation(PlotOrientation.VERTICAL); plot.getRangeAxis().setFixedDimension(15.0); // AXIS 2 final NumberAxis axis2 = new NumberAxis("Error Improvement"); axis2.setFixedDimension(10.0); axis2.setAutoRangeIncludesZero(false); axis2.setLabelPaint(Color.red); axis2.setTickLabelPaint(Color.red); plot.setRangeAxis(1, axis2); plot.setRangeAxisLocation(1, AxisLocation.BOTTOM_OR_RIGHT); plot.setDataset(1, this.dataset2); plot.mapDatasetToRangeAxis(1, 1); final XYItemRenderer renderer2 = new StandardXYItemRenderer(); renderer2.setSeriesPaint(0, Color.red); plot.setRenderer(1, renderer2); ChartUtilities.applyCurrentTheme(this.chart); return this.chart; }