我有一个始终从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);