Jasper reports JasperReports:如何在图表上屏蔽或过滤标签';s轴

Jasper reports JasperReports:如何在图表上屏蔽或过滤标签';s轴,jasper-reports,ireport,jfreechart,Jasper Reports,Ireport,Jfreechart,我正在使用一个基于以下简单数据集的简单面积图: DateTime(sql.timestamp) |Value(Integer) 2012-02-17 00:02:02 |100 2012-02-17 00:02:08 |110 2012-02-17 00:02:20 |90 2012-02-17 00:02:35 |10 2012-02-17 00:02:40 |130 2012-02-17 00:04:22 |14 2012-02-17 00:0

我正在使用一个基于以下简单数据集的简单面积图:

DateTime(sql.timestamp) |Value(Integer)
2012-02-17 00:02:02     |100
2012-02-17 00:02:08     |110
2012-02-17 00:02:20     |90
2012-02-17 00:02:35     |10
2012-02-17 00:02:40     |130
2012-02-17 00:04:22     |14
2012-02-17 00:04:33     |45
2012-02-17 00:05:02     |60
...
日期时间由类别轴使用,值由范围轴使用。
数据集中约有1000条记录
在类别轴的标签中,将显示每个日期时间值。
但如果1000条记录太多,类别标签将显示为黑线。
这就是我的问题。
我试图(取消)检查所有“图表属性”。没有结果。
我必须屏蔽或过滤标签吗?
我试图更改:
的值 类别标记标签掩码
类别轴垂直刻度标签
(此复选框不生效)

类别轴的标签表达式

所有这些都有几个方面。 但它不会起作用。 每个数据集将创建自己的标签

我使用的其他报告引擎已经计算了Cat。轴动态。
但是JasperReports?

我将iReport 4.5.0与(实际的)jfreechart 1.0.14一起使用

编辑

如果我使用时间序列图,JasperReports将按间隔(年、月等)对数据进行分组,而不是动态分组

但是图表的外观非常好,所以这就是我想要的。 只有标签必须彼此远离

这里有一个很好的例子(advsoft phpChartdirector)

以下是JasperReports/IReport示例:

不行。看看那只猫。轴心

所以。。怎么办

结束编辑

问候
Christian

使用时间序列图而不是折线图。你应该得到你想要的东西

编辑:我使用您提供的.jrxml和数据进行了测试。它运行良好:

但是。。。iReport中似乎有一个bug。无法在iReport GUI中设置时间段。也许这就是造成你问题的原因。这让我很困惑。无论您尝试选择什么时间段,iReport都会生成:

<timeSeriesDataset>

但您需要手动将JRXML更改为:

<timeSeriesDataset timePeriod="Second">

一旦你这么做了,你就会得到一张漂亮的图表。至少iReport没有删除正确的时间段信息。。。所以你只需要做一次


注意:如果你关心一些细节,比如让你的日期信息显示在两行上,这也是可能的。我讨厌一句话也不说。去年我写了一篇关于这方面的文章。查找该部分。

谢谢您的回答。但这不是我想要的。你能看一下我在帖子末尾所做的编辑吗?你真的需要一个时间序列表。折线图只能作为一种变通方法,并且只有在每次的间隔完全相等的情况下才有意义。这显然不适用于你的数据。请发布.jrxml以查看是否有帮助。您可能需要发布一些示例数据,以便有人真正查看。当然可以在iReport GUI中设置“时间段”:只需转到“图表数据”,然后单击“详细信息”即可查看您绘制的系列。对话框顶部有一个“时间段”下拉列表,您可以对其进行适当设置。问题指定他正在使用iReport 4.5(当时的当前版本)。我的回答没有重新说明这一点。但这很重要。GUI在4.5和5.0(当前版本)之间没有更改。但是在iReport4.5中,“时间段”的选择没有写入.jrxml。现在是了。不再需要手动编辑XML的变通方法。呜呜!