我正在使用 JFreeChart 显示一个月中每一天的值。
现在我想让我的 x 轴显示一个月中的几周而不是几天。
目前,我的图表的 y 轴值是 double,x 轴值是 int。
Timestamp ts = a.getTimestamp();
Double val = a.getVal();
series1.add(ts.getDate(), val);
我在用plot.getDomainAxis().setRange(0, 31);
将天数范围设置为一个月,并且xax.setTickUnit(new NumberTickUnit(7));
使 x 轴在正确的位置显示刻度。我希望显示的是周(0、1、2、3、4),而不是显示天(0、7、14、21、28)。
这可能吗?我怎样才能做到这一点?
你应该使用DateAxis对于你的时间轴,比如ChartFactory.createTimeSeriesChart()做。然后你可以使用setDateFormatOverride()
,就像他们展示的那样here,以及SimpleDateFormat对于“一个月中的一周”。
JFreeChart chart = ChartFactory.createTimeSeriesChart(…);
DateAxis axis = (DateAxis) chart.getXYPlot().getDomainAxis();
axis.setDateFormatOverride(new SimpleDateFormat("W"));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)