我正在开发两种类型的TimeSeries图表。一个使用TimePeriod作为'Hour',另一个使用默认值'Day'
现在,在显示报告期间,我们希望在TimeAxis上显示标签,并将时区作为参数传递给报告。我尝试使用timeAxisLabelExpression并在那里传递格式化的日期,但看起来像Jasper报告没有考虑使用TimeZone的时间格式。
我们从sql查询获得的日期(表示存储在DB中的日期)是UTC格式,但需要根据在图表的时间轴上选择的TimeZone进行显示。
有谁知道如何在 JasperReports 中实现这个目标?
注意:我们使用4.8.0版本的iReport来设计报告。
答案 0 :(得分:0)
我能够弄清楚如何在JasperReport的TimeSeries图表中添加TimeZone支持。 JasperReport在内部使用JFreeChart库来生成TimeSeries报告。 TimeTableXYDataset类有一个构造函数,它接受TimeZone。如果使用此构造函数,则会发生timeZone转换。
我还发现,TimeTableXYDataset中TimeZone的这种支持适用于JfreeChart 1.0.14版本。在早期版本中,defect与此相关联。