java - JFreeChart时间序列图表设置域区间

标签 java eclipse-rcp jfreechart timeserieschart

如何在TimeSeriesChart中设置Domain轴的时间间隔? 现在我有带有标签的域轴,看起来像:22.00 23.00、00.00、1.00、2.00 等。

我怎样才能将它们设置为:2月11日、2月12日等。 仅当我缩放图表时,我才应该能够看到所有时间。

编辑:现在我在 SimpleDateFormat 的帮助下解决了这个问题。

DateAxis dateAxis = (DateAxis) plot.getDomainAxis();
DateFormatSymbols dfs = DateFormatSymbols.getInstance(); // default locale
dateAxis.setDateFormatOverride(new SimpleDateFormat("dd-MMM-HH:mm", dfs));

图表显示:

enter image description here

编辑:问题仍然悬而未决:是否可以为域轴设置诸如按天分组之类的内容?

编辑:更多信息:) 我尝试获取上周的一些数据,但如果数据库中的数据仅 1 或 2 天,图表将如下所示: enter image description here

正如您所看到的,域轴上的时间轴存储了从 00.00(实际开始时间为 23.xx)到 10.00 的信息,这不好,因为用户应该看到数据所属的日期。在本例中,我创建 TimeSeries 并填充它,如下所示:

TimeSeries ts=new TimeSeries(name);
ts.addOrUpdate(new Hour(date), value);

如果我填写 ts 就像

ts.addOrUpdate(new Day(date), value);

然后图表没有显示任何数据

enter image description here

问题是如何按天制作图表组数据(也许可以借助 Zoom ),如下图所示?

enter image description here

最佳答案

如果您添加任何 RegularTimePeriodTimeSeries ,相应的轴将使用推断的周期作为格式化指南。可以找到使用 Day 的相关示例 here .

附录:另请参阅相关的 answer关于DateTickUnit

关于java - JFreeChart时间序列图表设置域区间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9332059/

相关文章:

java - 这段 delaunay 三角剖分代码是如何工作的?

java - 从 CQ5.5 索引中获取搜索词建议

events - 如何刷新 Eclipse RCP 中的属性 View ?

java - 我可以根据比例缩放ValueAxis吗?

java - 绘制图表

java - 在 java 中获取本地日历的一个月的第一天

java - 将对象列表转换为 Java 中的可选对象列表

eclipse-rcp - 从快捷方式运行时未创建文件夹

java - Eclipse 插件项目不显示在应用程序模型中添加的窗口

java - 在 JFreeChart 中在时间轴上绘制不规则周期数据