当前位置: 首页 > 面试题库 >

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

尹昂雄
2023-03-14
问题内容

我正在使用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)。

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


问题答案:

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

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


 类似资料:
  • 我正在从csv文件中读取日期/时间和数据,并将其存储在折线图中。我的日期/时间字符串是或,这实际上是第一个条目,我有几个小时的数据。 首先,我将chartArea X轴lablestyle设置为正确的格式:。 然后,我使用与上面相同的格式将实际的日期字符串解析为DateTime格式:。并将数据添加到图表中。

  • 问题内容: 我在制作具有日期数组和一堆PM 2.5值的散点图时遇到麻烦。我的列表如下所示: 问题答案: 设置大小 设置颜色 还有很多其他参数:http : //matplotlib.org/api/pyplot_api.html#matplotlib.pyplot.scatter

  • 我正在用javascript制作一个日历,但我不想显示周六和周日。我已经找了很多,但我没有找到任何好的解决办法。如果有人能帮助我,我将不胜感激。

  • 问题内容: 我有一个始终从x = 0开始的JFree XY折线图。然后,根据属性文件中用户定义的设置,应用程序将根据该数字(以分钟为单位)递增。 例如,x = 0开始时,用户定义的设置为5,因此刻度变为0、5、10、15、20…,或者用户设置为3,因此变为0、3、6、9、12…非常简单。 我遇到的问题是图表开始的方式。如果我从0开始,则0在图形的中间,而不是在左下角的-0.0000005,-0.0

  • 我是新来的,不知道如何解决这个问题;我也不知道是否有可能做我假装的事。问题是,我试图在JavaSwing应用程序中显示一个图形,我传递要显示的日期和值。日期由用户选择,可能不在一行中;,我的意思是,如果用户选择从星期四到星期一,那么星期六和星期天将被避免,并传递到图表星期四、星期五和星期一。问题是,图表从星期四到星期一(包括星期六和星期日)在X轴上显示它们,而实际情况并非如此。基于此示例,我的类如

  • 问题内容: 在我的JFreeChart时间序列图中,我发现图例线条变细以准确查看颜色。另一篇文章jfreechart- 更改图例中的颜色示例 ]建议重写渲染器方法,如下所示: 这种方法行之有效,直到你做我所做的 一旦完成,图例就会恢复为一行。有什么办法解决吗? 我采用的解决方案接近于TrashGod提出的解决方案, 我覆盖了getLegendItem()方法,将图例形状强制为所需的框。 问题答案: