Example usage for org.jfree.chart ChartFactory createScatterPlot

List of usage examples for org.jfree.chart ChartFactory createScatterPlot

Introduction

In this page you can find the example usage for org.jfree.chart ChartFactory createScatterPlot.

Prototype

public static JFreeChart createScatterPlot(String title, String xAxisLabel, String yAxisLabel,
        XYDataset dataset) 

Source Link

Document

Creates a scatter plot with default settings.

Usage

From source file:org.nbrcp.demo.core.views.Scatterplot.java

private void setUpView() {
    JFreeChart chart = ChartFactory.createScatterPlot("", "X", "Y", Data.getDataset());
    XYPlot plot = (XYPlot) chart.getPlot();
    Shape dotShape = new Ellipse2D.Double(0, 0, 5, 5);
    XYItemRenderer renderer = plot.getRenderer();
    renderer.setSeriesShape(0, dotShape);

    final ChartPanel panel = new ChartPanel(chart, true);
    panel.setMinimumDrawHeight(10);//from  www.j a  va 2  s. c o  m
    panel.setMaximumDrawHeight(2000);
    panel.setMinimumDrawWidth(10);
    panel.setMaximumDrawWidth(2000);
    panel.setSize(this.getSize());
    this.add(panel);
}

From source file:com.jml.main.Graph.java

public void drawScatterPlot(String title, XYDataset xYDataset) {
    JFreeChart chart = ChartFactory.createScatterPlot(title, "X axis label", "Y axis label", xYDataset);
    XYPlot plot = chart.getXYPlot();/*from  w  w  w.  ja  va 2s  .  c  o m*/
    Random random = new Random();
    for (int i = 0; i < dataset.getSeriesCount(); ++i) {
        plot.getRenderer().setSeriesPaint(i,
                new Color(random.nextInt(255), random.nextInt(255), random.nextInt(255)));
    }

    panel = new ChartPanel(chart);
    this.add(panel);
    this.pack();
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);
}

From source file:frequencyassignment.charts.Charts.java

public static void displayScatterPlot(String name, HashMap<Double, Double> values) {
    XYSeries xyData = new XYSeries(name);
    for (Map.Entry<Double, Double> entry : values.entrySet()) {
        xyData.add(entry.getKey(), entry.getValue());
    }//from  w  w w .ja  v  a 2s.  co  m
    XYSeriesCollection xySeriesCollection = new XYSeriesCollection(xyData);
    JFreeChart chart = ChartFactory.createScatterPlot(name, "X", "Y", (XYDataset) xySeriesCollection);
    ChartFrame frame = new ChartFrame(name, chart);
    frame.pack();
    frame.setVisible(true);
}

From source file:views.analysis.ResidualPlotDisplay.java

@Override
public void initialize() {
    JFreeChart lineChart = ChartFactory.createScatterPlot(this.getTitle(), "Temps", "Rsidus",
            createDataset());/*w w  w .  j  av  a 2  s .c  o  m*/

    ChartPanel chartPanel = new ChartPanel(lineChart);
    chartPanel.setPreferredSize(new java.awt.Dimension(560, 367));
    setContentPane(chartPanel);
}

From source file:org.jfree.chart.demo.ScatterCanvas.java

private JFreeChart createChart(final XYDataset dataset) {
    final JFreeChart result = ChartFactory.createScatterPlot("XYPosition", "X", "Y", dataset

    );//from  ww w.  j a  va 2  s. c  o m
    final XYPlot plot = result.getXYPlot();
    ValueAxis axis = plot.getDomainAxis();

    axis.setRange(0, xEffectiveArea);
    axis = plot.getRangeAxis();
    axis.setRange(0, yEffectiveArea);
    return result;
}

From source file:au.edu.jcu.usb.USBPlotFrame.java

/**
 * Constructs the ChartPanel from the provided XYSeriesCollection
 *
 * @param xySeriesCollection//from ww w  .j a  v  a2  s  . c o  m
 * @return The constructed ChartPanel containing the XY scatter plot
 */
private ChartPanel constructChart(XYSeriesCollection xySeriesCollection) {
    // Construct the scatter plot from the provided xySeriesCollection
    JFreeChart chart = ChartFactory.createScatterPlot("Title", "X Axis", "Y Axis", xySeriesCollection);

    // Get the XY Plot from the scatter chart
    XYPlot xyPlot = (XYPlot) chart.getPlot();
    xyPlot.setDomainCrosshairVisible(true);
    xyPlot.setRangeCrosshairVisible(true);

    // Create the renderer
    XYItemRenderer renderer = xyPlot.getRenderer();
    renderer.setSeriesPaint(0, Color.blue);

    NumberAxis domain = (NumberAxis) xyPlot.getDomainAxis();

    domain.setVerticalTickLabels(true);

    ChartPanel chartPanel = new ChartPanel(chart);
    return chartPanel;
}

From source file:org.matsim.contrib.drt.analysis.DensityScatterPlots.java

public static JFreeChart createPlot(String title, String xAxisLabel, String yAxisLabel, XYSeries series,
        Pair<Double, Double> lineCoeffs) {
    XYSeriesCollection dataset = new XYSeriesCollection();
    dataset.addSeries(series);/*from   www  . j ava2s .c o  m*/
    double maxValue = Math.max(series.getMaxX(), series.getMaxY());

    // y=x
    XYSeries lineXY = new XYSeries("y = x");
    lineXY.add(0, 0);
    lineXY.add(maxValue, maxValue);
    dataset.addSeries(lineXY);

    if (lineCoeffs != null) {
        // a*y+b=x
        double a = lineCoeffs.getLeft();
        double b = lineCoeffs.getRight();
        String namePrefix = a == 0 ? "" : (a + " * y + ");
        XYSeries lineABXY = new XYSeries(namePrefix + b + " = x");
        lineABXY.add(b, 0);
        if (a == 0) {
            lineABXY.add(b, maxValue);
        } else {
            lineABXY.add(maxValue, (maxValue - b) / a);
        }
        dataset.addSeries(lineABXY);
    }

    final JFreeChart chart = ChartFactory.createScatterPlot(title, xAxisLabel, yAxisLabel, dataset);
    XYPlot xyPlot = (XYPlot) chart.getPlot();

    XYLineAndShapeRenderer renderer = (XYLineAndShapeRenderer) xyPlot.getRenderer(0);
    renderer.setSeriesPaint(0, new Color(255, 0, 0, 50));
    renderer.setSeriesShape(0, CIRCLE);
    renderer.setSeriesLinesVisible(0, false);
    renderer.setSeriesShapesVisible(0, true);
    renderer.setSeriesVisibleInLegend(0, false);

    for (int i = 1; i < dataset.getSeriesCount(); i++) {
        renderer.setSeriesPaint(i, new Color(0, 0, 0));
        renderer.setSeriesLinesVisible(i, true);
        renderer.setSeriesShapesVisible(i, false);
        renderer.setSeriesVisibleInLegend(i, false);
    }

    xyPlot.getDomainAxis().setUpperBound(maxValue);
    xyPlot.getRangeAxis().setUpperBound(maxValue);
    xyPlot.getDomainAxis().setLowerBound(0);
    xyPlot.getRangeAxis().setLowerBound(0);

    return chart;
}

From source file:org.ensor.robots.apps.pidcallibrator.MainPanel.java

/**
 * Creates new form MainPanel//w w w .ja  v  a2 s. c o m
 */
public MainPanel() {
    initComponents();

    XYSeriesCollection collection = new XYSeriesCollection();

    XYSeries setPoints = new XYSeries("Set Points");
    setPoints.add(10, 0);
    setPoints.add(20, 10);
    setPoints.add(30, 5);
    setPoints.add(40, 20);
    collection.addSeries(setPoints);

    XYSeries actualPoints = new XYSeries("Actual Points");
    actualPoints.add(5, 0);
    actualPoints.add(15, 5);
    actualPoints.add(40, 50);
    collection.addSeries(actualPoints);

    JFreeChart scatterPlot = ChartFactory.createScatterPlot("Angle PID tracking", "Time", "Angle", collection);

    ChartPanel cp = new ChartPanel(scatterPlot);
    mChart.setLayout(new BorderLayout());
    mChart.add(cp, BorderLayout.CENTER);
    mChart.validate();
    cp.setSize(mChart.getSize());

}

From source file:br.fapesp.myutils.TestMyUtils.java

@Test
@Ignore//from w  ww. ja v  a  2 s  .c  o  m
public void testJFreeChart() {
    double[][] data = new double[][] { { 1, 2 }, { 3, 4 }, { 5, 6 } };
    XYSeries xy = new XYSeries("Teste");
    xy.add(1, 2);
    xy.add(2, 4);
    xy.add(3, 6);

    XYSeriesCollection dataset = new XYSeriesCollection();
    dataset.addSeries(xy);

    JFreeChart chart = ChartFactory.createScatterPlot("Scatter teste", "x", "y", dataset);

    ChartFrame frame = new ChartFrame("XYLine Chart", chart);
    frame.pack();
    frame.setVisible(true);
}

From source file:org.jfree.chart.demo.selection.SelectionDemo3.java

private static JFreeChart createChart(XYDataset dataset, DatasetSelectionExtension<XYCursor> ext) {
    JFreeChart chart = ChartFactory.createScatterPlot("SelectionDemo3", "X", "Y", dataset);

    XYPlot plot = (XYPlot) chart.getPlot();
    plot.setNoDataMessage("NO DATA");

    plot.setDomainPannable(true);/*from   ww w .ja  va 2 s . c  om*/
    plot.setRangePannable(true);
    plot.setDomainZeroBaselineVisible(true);
    plot.setRangeZeroBaselineVisible(true);

    plot.setDomainGridlineStroke(new BasicStroke(0.0f));
    plot.setRangeGridlineStroke(new BasicStroke(0.0f));

    plot.setDomainMinorGridlinesVisible(true);
    plot.setRangeMinorGridlinesVisible(true);

    //XYItemRenderer r = plot.getRenderer();
    XYDotRenderer r = new XYDotRenderer();
    r.setDotHeight(2);
    r.setDotWidth(2);

    r.setSeriesPaint(0, Color.blue);
    r.setSeriesPaint(1, Color.green);
    r.setSeriesPaint(2, Color.yellow);
    r.setSeriesPaint(3, Color.orange);
    plot.setRenderer(r);
    NumberAxis domainAxis = (NumberAxis) plot.getDomainAxis();
    domainAxis.setAutoRangeIncludesZero(false);

    domainAxis.setTickMarkInsideLength(2.0f);
    domainAxis.setTickMarkOutsideLength(2.0f);

    domainAxis.setMinorTickMarksVisible(true);

    NumberAxis rangeAxis = (NumberAxis) plot.getRangeAxis();
    rangeAxis.setTickMarkInsideLength(2.0f);
    rangeAxis.setTickMarkOutsideLength(2.0f);
    rangeAxis.setMinorTickMarksVisible(true);

    //add selection specific rendering
    IRSUtilities.setSelectedItemPaint(r, ext, Color.red);

    //register plot as selection change listener
    ext.addChangeListener(plot);

    return chart;
}