我有一个始终从x = 0开始的JFree XY折线图。然后,基于属性文件中用户定义的设置,应用程序将基于该数字递增(这表示时间以分钟为单位)。

例如,x = 0开始时,用户定义的设置为5,因此刻度变为0、5、10、15、20…,或者用户设置为3,因此变为0、3、6、9、12…非常简单。

我遇到的问题是图表开始的方式。如果我从0开始,则0在图形的中间,而不是在左下角的-0.0000005,-0.000004,-0.000003…0.000000,0.000001,0.000002…0.000005

如何只在底部手动添加比例,即定义比例应为2,然后再进行维护?

最佳答案

您应该使用 NumberAxis ,它包含许多定义图表比例的方法。

范例:

// Create an XY Line chart
XYSeries series = new XYSeries("Random Data");
series.add(1.0, 500.2);
series.add(10.0, 694.1);
XYSeriesCollection data = new XYSeriesCollection(series);
JFreeChart chart = ChartFactory.createXYLineChart("XY Series Demo", "X", "Y", data,
                                                  PlotOrientation.VERTICAL,
                                                  true, true, false);

// Create an NumberAxis
NumberAxis xAxis = new NumberAxis();
xAxis.setTickUnit(new NumberTickUnit(2));

// Assign it to the chart
XYPlot plot = (XYPlot) chart.getPlot();
plot.setDomainAxis(xAxis);

10-06 15:33