2012-05-24 58 views
3

早上好!我遇到了Jaspersoft iReport 4.5.0的問題,我希望得到一些幫助。基本上,當我顯示一個xy折線圖時,它試圖爲每個數據點在x軸上添加一個標籤。我有近200個數據點,所以最終看起來只是一條實線,即使我調整了刻度標籤的旋轉或任何其他東西。iReport在x軸上顯示太多標籤

我知道對這個問題的一般回答是使用時間序列圖代替。這通常會起作用,但在我的例子中,我使用了一個多軸圖表,其對面的軸線是條形圖。由於條形圖沒有時間序列,iReport不允許我將條形圖與時間序列圖混合使用,迫使我使用xy折線圖。

有什麼辦法可以讓我的蛋糕吃掉嗎?有些方法可以過濾出一些標籤?或者可能限制可以顯示的標籤數量,分佈在X軸上?我還沒有在互聯網上的任何地方看到明確的答案!

在此先感謝! - 伊恩

編輯:這裏是多軸圖表我想修改的一個JRXML:

<multiAxisChart> 
    <chart evaluationTime="Report" hyperlinkType="LocalAnchor"> 
     <reportElement x="42" y="441" width="440" height="292"/> 
     <chartTitle position="Top"> 
      <titleExpression><![CDATA["CICS Elapsed"]]></titleExpression> 
     </chartTitle> 
     <chartSubtitle/> 
     <chartLegend/> 
     <anchorNameExpression><![CDATA["CICS Elapsed Small"]]></anchorNameExpression> 
     <hyperlinkAnchorExpression><![CDATA["CICS Elapsed Big"]]></hyperlinkAnchorExpression> 
     <hyperlinkTooltipExpression><![CDATA["Click to Enlarge"]]></hyperlinkTooltipExpression> 
    </chart> 
    <multiAxisPlot> 
     <plot/> 
     <axis position="leftOrTop"> 
      <lineChart> 
       <chart> 
        <reportElement x="0" y="0" width="0" height="0" backcolor="#FFFFFF"/> 
        <chartTitle position="Top" color="#000000"> 
         <titleExpression><![CDATA["CICS Elapsed"]]></titleExpression> 
        </chartTitle> 
        <chartSubtitle color="#000000"/> 
        <chartLegend textColor="#000000" backgroundColor="#FFFFFF"/> 
       </chart> 
       <categoryDataset> 
        <dataset> 
         <datasetRun subDataset="wmprod_cics"/> 
        </dataset> 
        <categorySeries> 
         <seriesExpression><![CDATA["Cpu Time"]]></seriesExpression> 
         <categoryExpression><![CDATA[$F{TIMESTAMP}]]></categoryExpression> 
         <valueExpression><![CDATA[$F{ELAPSTIME}]]></valueExpression> 
        </categorySeries> 
       </categoryDataset> 
       <linePlot isShowShapes="false"> 
        <plot/> 
        <categoryAxisLabelExpression><![CDATA["Date/Time"]]></categoryAxisLabelExpression> 
        <valueAxisLabelExpression><![CDATA["Avg Elapsed Time (ms)"]]></valueAxisLabelExpression> 
       </linePlot> 
      </lineChart> 
     </axis> 
     <axis position="rightOrBottom"> 
      <barChart> 
       <chart> 
        <reportElement x="0" y="0" width="0" height="0" backcolor="#FFFFFF"/> 
        <chartTitle position="Top" color="#000000"> 
         <titleExpression><![CDATA["CICS Elapsed"]]></titleExpression> 
        </chartTitle> 
        <chartSubtitle color="#000000"/> 
        <chartLegend textColor="#000000" backgroundColor="#FFFFFF"/> 
       </chart> 
       <categoryDataset> 
        <dataset> 
         <datasetRun subDataset="wmprod_cics"/> 
        </dataset> 
        <categorySeries> 
         <seriesExpression><![CDATA["Volume (transactions)"]]></seriesExpression> 
         <categoryExpression><![CDATA[$F{TIMESTAMP}]]></categoryExpression> 
         <valueExpression><![CDATA[$F{TRANSCOMPL}]]></valueExpression> 
        </categorySeries> 
       </categoryDataset> 
       <barPlot> 
        <plot/> 
        <itemLabel/> 
        <valueAxisLabelExpression><![CDATA["Volume (transactions)"]]></valueAxisLabelExpression> 
       </barPlot> 
      </barChart> 
     </axis> 
    </multiAxisPlot> 
</multiAxisChart> 
+0

你能發佈JRXML代碼嗎? –

+0

當然。添加到原始帖子。 – user1415155

回答

2

我有同樣的問題。我認爲答案是這樣的:

<chart> 
    <reportElement x="0" y="0" width="802" height="215"> 
    <property name="net.sf.jasperreports.chart.domain.axis.tick.interval" value="1"/> 
    </reportElement> 

設置適當的滴答間隔。注意:我的圖表是散點圖。未通過折線測試。

+1

適當設置滴答間隔。希望它能幫助別人。 – Simon

+0

注意;我的圖表是一張散點圖。未通過折線測試 – Simon