我如何创建一个JFreeChart散点图最佳拟合线

时间:2011-07-11 15:12:01

标签: java jfreechart

我想要包含在JFreeChart散点图中的分数列表。这很好,但我现在想要一个最合适的线。经过一些搜索,JFreeChart不直接支持这样的计算,所以我想要做的就是自己计算,然后手动将一条线放入图表中。如何在散点图中获得一行?

        XYSeries series = new XYSeries("Data");
        for (Point p : points) {
           series.add(p.getX(), p.getY());
        }
        XYSeriesCollection dataset = new XYSeriesCollection(series);
        JFreeChart chart = ChartFactory.createScatterPlot(chartName, "Mass", parameter, dataset, PlotOrientation.VERTICAL, false, true, true);
        return chart;

1 个答案:

答案 0 :(得分:3)

使用内置的Regression方法getOLSRegression()或统计库(例如Apache Commons Math),使用简单回归确定此类线的斜率和截距。将原始数据添加到散点图中,如here所示。添加代表您的行结束点的XYLineAnnotation,如here所示。