在Jasper报告中插入轴标签

问题描述 投票:0回答:1

我正在使用Jasper Reports研究Java,并且正在尝试创建一个带有XYLineChart的报告

我的报告没问题,所有数据都显示了我想要的方式。我的图表正在绘制所有数据,但X和Y轴没有名称(label),因此我无法“知道”该数据是什么。

我想在图表中放入轴的名称。我读了一些书后发现:

线图也有两个轴。可以使用categoryAxisLabelExpression和valueAxisLabelExpression ...来控制其标签。

本书提供了以下语法:

<!ELEMENT linePlot (plot, categoryAxisLabelExpression?,
categoryAxisFormat?, valueAxisLabelExpression?, valueAxisFormat?)>

<!ATTLIST linePlot
isShowLines (true | false) "true"
isShowShapes (true | false) "true">

jrxml完整代码在我的GitHub中:Report

下面是从上面的代码中提取的关于chart的行:

</band>
        <band height="164">
            <xyLineChart>
                <chart evaluationTime="Report">
                    <reportElement stretchType="ContainerHeight" x="20" y="20" width="280" height="144" uuid="e33fd328-3bfa-41f7-aa53-face45efaf74">
                        <propertyExpression name="net.sf.jasperreports.chart.range.axis.tick.interval"><![CDATA[value]]></propertyExpression>
                    </reportElement>
                    <box>
                        <topPen lineWidth="1.0" lineStyle="Solid" lineColor="#000000"/>
                        <leftPen lineWidth="1.0" lineStyle="Solid" lineColor="#000000"/>
                        <bottomPen lineWidth="1.0" lineStyle="Solid" lineColor="#000000"/>
                        <rightPen lineWidth="1.0" lineStyle="Solid" lineColor="#000000"/>
                    </box>
                    <chartTitle/>
                    <chartSubtitle/>
                    <chartLegend/>
                </chart>
                <xyDataset>
                    <dataset resetType="Report">
                        <datasetRun subDataset="CorpoDeProvaChartDataSet" uuid="320307a6-07d6-4d08-8f42-0537af75c157">
                            <dataSourceExpression><![CDATA[$P{CorpoDeProvaChartCollectionBeanParam}]]></dataSourceExpression>
                        </datasetRun>
                    </dataset>
                    <xySeries autoSort="true">
                        <seriesExpression><![CDATA[$F{serie}]]></seriesExpression>
                        <xValueExpression><![CDATA[$F{days}]]></xValueExpression>
                        <yValueExpression><![CDATA[$F{fck}]]></yValueExpression>
                        <labelExpression><![CDATA["TEst"]]></labelExpression>
                    </xySeries>
                </xyDataset>
                <linePlot>
                    <plot/>
                    <categoryAxisFormat>
                        <axisFormat labelColor="#000000" tickLabelColor="#000000" axisLineColor="#000000"/>
                    </categoryAxisFormat>
                    <valueAxisFormat>
                        <axisFormat labelColor="#000000" tickLabelColor="#000000" axisLineColor="#000000"/>
                    </valueAxisFormat>
                </linePlot>
            </xyLineChart>
            <textField>
                <reportElement x="143" y="111" width="100" height="30" uuid="a6f5c887-cac8-4304-b8d5-8b9bb492ee39"/>
                <textFieldExpression><![CDATA[$V{PAGE_NUMBER}]]></textFieldExpression>
            </textField>
        </band>

我试图像这样更改代码,但这只是给我一个错误:

...
                    <categoryAxisFormat>
                        <axisFormat labelColor="#000000" tickLabelColor="#000000" axisLineColor="#000000"/>
                    <categoryAxisLabelExpression><![CDATA["Days"]]></categoryAxisLabelExpression>
                    </categoryAxisFormat>
                    <valueAxisFormat>
                        <axisFormat labelColor="#000000" tickLabelColor="#000000" axisLineColor="#000000"/>
                    <valueAxisLabelExpression><![CDATA["fck"]]</valueAxisLabelExpression>
                    </valueAxisFormat>
...

此外,我在Jaspersoft Studio的图表属性选项卡中也找不到能解决问题的任何方法。我可以找到指向valueAxisLabelExpressionvalueAxisFormat属性的任何参考,但是我不知道如何设置它们。

附加信息:

  1. 我正在使用Eclipse IDE
  2. 我的报告充满了subDataSetsJRBeanCollectionDataSource class
  3. 总而言之,我想知道如何在JasperReport中的label的X和Y轴上放置XYLineChart

谢谢大家的帮助。

我正在使用Jasper Reports研究Java,并且尝试使用XYLineChart创建报告。我的报告可以,所有数据都可以显示我想要的方式。我的图表正在绘制所有数据,但X和Y ...

charts jasper-reports
1个回答
0
投票

经过一些尝试和阅读,我做了想要的事情。

© www.soinside.com 2019 - 2024. All rights reserved.