Как бы я создал лучшую линию рассеяния JFreeChart - PullRequest
1 голос
/ 11 июля 2011

У меня есть список точек, которые я хочу включить в диаграмму рассеяния 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 Ответ

3 голосов
/ 12 июля 2011

Используйте встроенный Regression метод getOLSRegression() или статистическую библиотеку, например Apache Commons Math , чтобы определить наклон и перехват такоголиния с использованием простой регрессии.Добавьте свои исходные данные в точечный график, как показано здесь .Добавьте XYLineAnnotation, представляющий конечные точки вашей линии, как показано здесь .

...