小编典典

Jfreechart:在x轴上显示星期以表示天数

java

我正在使用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、7、14、21、28),而是希望它们是几周(0、1、2、3、4)。

那有可能吗,我将如何做到呢?


阅读 236

收藏
2020-11-30

共1个答案

小编典典

您应该DateAxis像时间一样使用a
作为时间轴ChartFactory.createTimeSeriesChart()。然后,您可以使用setDateFormatOverride(),如它们在此处显示的那样,并使用SimpleDateFormat“每月的一周”。

JFreeChart chart = ChartFactory.createTimeSeriesChart(…);
DateAxis axis = (DateAxis) chart.getXYPlot().getDomainAxis();
axis.setDateFormatOverride(new SimpleDateFormat("W"));
2020-11-30