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, PlotOrientation orientation, boolean legend, boolean tooltips, boolean urls) 

Source Link

Document

Creates a scatter plot with default settings.

Usage

From source file:backend.java.ScatterPlot.java

private JFreeChart getChart(XYSeriesCollection dataset, String title, String xAxisTitle, String yAxisTitle,
        Regression[] regressions) {/*from   w  ww  . java 2s. c o  m*/
    JFreeChart chart = ChartFactory.createScatterPlot(title, xAxisTitle, yAxisTitle, dataset,
            PlotOrientation.VERTICAL, true, false, false);
    for (Regression regression : regressions) {
        regression.preformRegression(dataset, chart.getXYPlot());
    }

    return chart;
}

From source file:scatterplot1k.JFreeScatter2.java

private JFreeChart createChart(String title, XYDataset dataset) {
    JFreeChart jfreechart = ChartFactory.createScatterPlot(title, "X", "Y", createDataset(),
            PlotOrientation.VERTICAL, true, true, false);
    //XYItemRenderer renderer = xyPlot.getRenderer();
    //renderer.setSeriesPaint(0, Color.blue);
    //NumberAxis domain = (NumberAxis) xyPlot.getDomainAxis();
    //domain.setVerticalTickLabels(true);
    return jfreechart;
}

From source file:org.owasp.benchmark.score.report.ScatterInterpretation.java

private JFreeChart display(String title, int height) {
    JFrame f = new JFrame(title);
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    XYSeriesCollection dataset = new XYSeriesCollection();
    chart = ChartFactory.createScatterPlot(title, "False Positive Rate", "True Positive Rate", dataset,
            PlotOrientation.VERTICAL, true, true, false);
    theme.apply(chart);/*from w ww . java 2 s . c om*/

    XYPlot xyplot = chart.getXYPlot();
    initializePlot(xyplot);

    makePointer(xyplot, 7, 93, " Ideal vulnerability detection", TextAnchor.TOP_LEFT, 45);
    makePointer(xyplot, 10, 10, " Tool reports nothing is vulnerable", TextAnchor.TOP_LEFT, 45);
    // makePointer( xyplot, 70, 30, " Worse than random", TextAnchor.TOP_LEFT, 45 );
    makePointer(xyplot, 90, 90, "Tool reports everything is vulnerable ", TextAnchor.TOP_LEFT, 45);
    // makePointer( xyplot, 50, 50, "Tool reports vulnerabilities randomly ", TextAnchor.BOTTOM_RIGHT, 225);
    makePointer(xyplot, 50, 50, "Tool reports vulnerabilities randomly ", TextAnchor.TOP_LEFT, 45);

    makeOval(xyplot, 0, 3, 20, 10, 45);
    makeOval(xyplot, 42, 3, 20, 10, 45);
    makeOval(xyplot, 84, 3, 20, 10, 45);
    makeOval(xyplot, 43, 64, 20, 10, 45);

    ChartPanel cp = new ChartPanel(chart, height, height, 400, 400, 1200, 1200, false, false, false, false,
            false, false);
    f.add(cp);
    f.pack();
    f.setLocationRelativeTo(null);
    // f.setVisible(true);
    return chart;
}

From source file:e3fraud.gui.GraphingTool.java

public static JFreeChart generateGraph(E3Model model, Resource need, int startValue, int endValue,
        boolean expected) {
    //Get list of actors
    Set<Resource> actors = model.getActors();
    //generate a series
    Map<Resource, XYSeries> actorSeriesMap = model.getTotalForActors(need, startValue, endValue, expected);

    //for each actor
    XYSeriesCollection line_chart_dataset = new XYSeriesCollection();

    for (Resource actor : actors) {
        //add it's series to the chart
        XYSeries series = actorSeriesMap.get(actor);
        line_chart_dataset.addSeries(series);
        double slope;
        if (series.getItemCount() > 1) {
            slope = (series.getY(0).doubleValue() - series.getY(1).doubleValue())
                    / (series.getX(0).doubleValue() - series.getX(1).doubleValue());
        } else {/* ww  w .jav  a2  s  . co  m*/
            slope = 0;
        }
        DecimalFormat df = new DecimalFormat("#.##");
        series.setKey(series.getKey() + "\nAvg.\t = \t" + df.format(model.getLastKnownAverages().get(actor))
                + "\nSlope\t = \t" + df.format(slope));
    }

    /* Step -2:Define the JFreeChart object to create line chart */
    JFreeChart lineChartObject;
    if (expected) {
        lineChartObject = ChartFactory.createScatterPlot(
                "(Ideal) Profit Vs Occurences of \"" + need.getProperty(E3value.e3_has_name).getString()
                        + " \"",
                "Occurences of \"" + need.getProperty(E3value.e3_has_name).getString() + " \"",
                "Profit (in Euro)", line_chart_dataset, PlotOrientation.VERTICAL, true, true, false);
    } else {
        lineChartObject = ChartFactory.createScatterPlot(
                "(Non-ideal) Profit Vs Occurences of \"" + need.getProperty(E3value.e3_has_name).getString()
                        + " \"",
                "Occurences of \"" + need.getProperty(E3value.e3_has_name).getString() + " \"",
                "Profit (in Euro)", line_chart_dataset, PlotOrientation.VERTICAL, true, true, false);
    }
    return lineChartObject;
}

From source file:cloud.requestengine.ResponseTimeService.java

public JFreeChart getChart() {
    JFreeChart chart = ChartFactory.createScatterPlot("Response Time", "Time (ms)", "ResponseTime (ms)",
            getDataset(), PlotOrientation.VERTICAL, true, true, false);
    final XYPlot plot = chart.getXYPlot();
    final XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer();
    renderer.setSeriesLinesVisible(0, false);
    renderer.setSeriesShapesVisible(1, false);

    Shape shape = new Rectangle2D.Double(-1, -1, 2, 2);
    renderer.setSeriesShape(0, shape);/*from  w w w . j ava2  s  .c om*/

    plot.setRenderer(renderer);

    return chart;
}

From source file:edu.emory.library.tast.database.graphs.GraphTypeScatter.java

public JFreeChart createChart(Object[] data) {

    CategoryTableXYDataset dataset = new CategoryTableXYDataset();

    JFreeChart chart = ChartFactory.createScatterPlot(null, getSelectedIndependentVariable().getLabel(),
            TastResource.getText("components_charts_barvalue"), dataset, PlotOrientation.VERTICAL, true, true,
            false);//  ww  w . j  a v a  2s  .  com

    //getSelectedIndependentVariable().getFormat();

    XYPlot plot = chart.getXYPlot();
    ((NumberAxis) plot.getDomainAxis()).setNumberFormatOverride(new DecimalFormat("0"));

    chart.setBackgroundPaint(Color.white);

    List allDataSeries = getDataSeries();
    for (int j = 0; j < allDataSeries.size(); j++) {
        DataSeries dataSearies = (DataSeries) allDataSeries.get(j);
        String dataSeriesLabel = dataSearies.formatForDisplay();
        for (int i = 0; i < data.length; i++) {
            Object[] row = (Object[]) data[i];
            Number x = (Number) row[0];
            Number y = (Number) row[j + 1];
            if (x != null && y != null)
                dataset.add(x.doubleValue(), y.doubleValue(), dataSeriesLabel);
        }
    }

    return chart;

}

From source file:jyplot.XYErrorBar.ErrorBarDemo.java

private ChartPanel createChartPanel(XYDataset dataset) {
    JFreeChart chart = ChartFactory.createScatterPlot("Error Bar Demo",
            // title
            "x",//from  w w w.j  a  v a  2 s .com
            // x-axis label
            "y",
            // y-axis label
            dataset,
            // data
            PlotOrientation.VERTICAL,
            // create legend?
            true,
            // generate tooltips?
            true, false
    // generate URLs?
    );
    XYErrorBarRenderer r = new XYErrorBarRenderer();
    chart.getXYPlot().setRenderer(r);
    r.addChangeListener(chart.getXYPlot());// see bug 1177884

    ChartPanel chartPanel = new ChartPanel(chart, false, false, false, false, false);
    chartPanel.setMouseZoomable(true, false);
    return chartPanel;
}

From source file:org.mc.okapi.Plot.java

public Plot(double[] X, double[] Y, String xLab, String yLab, String seriesName, String applicationTitle,
        String chartTitle) {//from   w w  w  . j a  va2s  .  co  m
    super(applicationTitle);

    XYSeries series = new XYSeries(seriesName);

    for (int i = 0; i < X.length; i++) {
        series.add(X[i], Y[i]);
    }
    // create a dataset...
    XYSeriesCollection dataset = new XYSeriesCollection();
    dataset.addSeries(series);

    // based on the dataset we create the chart        
    JFreeChart chart = ChartFactory.createScatterPlot(chartTitle, xLab, yLab, dataset, PlotOrientation.VERTICAL,
            true, rootPaneCheckingEnabled, rootPaneCheckingEnabled);
    Shape cross = ShapeUtilities.createDiagonalCross(3, 1);
    XYPlot xyPlot = (XYPlot) chart.getPlot();
    xyPlot.setDomainCrosshairVisible(true);
    xyPlot.setRangeCrosshairVisible(true);
    XYItemRenderer renderer = xyPlot.getRenderer();
    renderer.setSeriesShape(0, cross);
    renderer.setSeriesPaint(0, Color.red);

    // we put the chart into a panel
    ChartPanel chartPanel = new ChartPanel(chart);
    setIconImage(Toolkit.getDefaultToolkit().getImage("images/ico/extra/science_32.png"));

    // default size
    chartPanel.setPreferredSize(new java.awt.Dimension(500, 270));
    // add it to our application
    setContentPane(chartPanel);

}

From source file:com.wattzap.view.graphs.GenericScatterGraph.java

public GenericScatterGraph(XYSeries series, String xAxis, String yAxis) {
    super();/*from  w  ww. j a  va  2  s .  c om*/

    XYDataset xyDataset = new XYSeriesCollection(series);

    JFreeChart chart = ChartFactory.createScatterPlot("", // chart title
            xAxis, // x axis label
            yAxis, // y axis label
            null, PlotOrientation.VERTICAL, false, // include legend
            true, // tooltips
            false // urls
    );

    chart.setBackgroundPaint(Color.darkGray);
    plot = chart.getXYPlot();
    plot.setDataset(0, xyDataset);
    plot.setBackgroundPaint(Color.white);
    plot.setDomainGridlinePaint(Color.lightGray);
    plot.setRangeGridlinePaint(Color.lightGray);

    // Shape cross = ShapeUtilities.createDiamond(0.5f);
    Shape cross = ShapeUtilities.createDiagonalCross(0.5f, 0.5f);
    XYItemRenderer renderer = plot.getRenderer();
    renderer.setSeriesPaint(0, new Color(252, 141, 89));
    renderer.setSeriesShape(0, cross);

    ValueAxis domainAxis = plot.getDomainAxis();
    domainAxis.setTickLabelPaint(Color.white);
    domainAxis.setLabelPaint(Color.white);

    ValueAxis rangeAxis = plot.getRangeAxis();
    rangeAxis.setTickLabelPaint(Color.white);
    rangeAxis.setLabelPaint(Color.white);

    chartPanel = new ChartPanel(chart);
    chartPanel.setSize(100, 800);

    setLayout(new BorderLayout());
    add(chartPanel, BorderLayout.CENTER);
    setBackground(Color.black);

    chartPanel.revalidate();
    setVisible(true);
}

From source file:moviedatas.View.GlobalChart.java

@Override
public void movieListHasCHanged(ArrayList<Movie> movies) {
    XYSeries series = new XYSeries("Movie");
    for (int i = 0; i < movies.size(); i++) {
        Movie currentMovie = movies.get(i);
        series.add(currentMovie.getGross(), currentMovie.getScore());
    }//w  w w  .jav  a  2 s  .  co m
    XYSeriesCollection dataset = new XYSeriesCollection();
    dataset.addSeries(series);
    JFreeChart scatterPlot = ChartFactory.createScatterPlot("", "Gross (in $)", "Score", dataset, VERTICAL,
            true, true, false);
    cPanel.setChart(scatterPlot);
    cPanel.updateUI();
}