我有一个要包含在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;
使用内置Regression方法getOLSRegression()或统计库(例如Apache CommonsMath)通过简单的回归来确定直线的斜率和截距。原来的数据添加到散点图。添加XYLineAnnotation代表您的线的端点
Regression
getOLSRegression()
XYLineAnnotation