无法手动设置Y轴的间隔

时间:2017-12-08 09:10:00

标签: highcharts jasper-reports

我的jasper报告中有一个HTML5柱形图。我需要配置y轴并能够手动设置间隔

我用过,

<property name="net.sf.jasperreports.chart.range.axis.tick.count" value="false"/>
<property name="net.sf.jasperreports.chart.range.axis.tick.interval" value="2"/>

它对图表没有影响

源代码如下

<?xml version="1.0" encoding="UTF-8"?>
<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="customizechart" pageWidth="1000" pageHeight="1000" columnWidth="960" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="23a00417-b19d-4f98-aa59-dc6422d51386">
    <property name="net.sf.jasperreports.chart.range.axis.tick.count" value="false"/>
    <property name="net.sf.jasperreports.chart.range.axis.tick.interval" value="2"/>
    <queryString>
        <![CDATA[Select * from some_table]]>
    </queryString>
    <field name="Name" class="java.lang.String"/>
    <field name="AppliedQuantity" class="java.lang.Float"/>
    <summary>
        <band height="959" splitType="Stretch">
            <componentElement>
                <reportElement x="0" y="0" width="960" height="500" uuid="774dd6b9-b5b9-4d3c-b518-6f7c7ca40043"/>
                <hc:chart xmlns:hc="http://jaspersoft.com/highcharts" xsi:schemaLocation="http://jaspersoft.com/highcharts http://jaspersoft.com/schema/highcharts.xsd" type="Column">
                    <hc:chartSetting name="default">
                        <hc:chartProperty name="chart.zoomType">
                            <hc:propertyExpression><![CDATA["xy"]]></hc:propertyExpression>
                        </hc:chartProperty>
                        <hc:chartProperty name="credits.enabled">
                            <hc:propertyExpression><![CDATA[false]]></hc:propertyExpression>
                        </hc:chartProperty>
                        <hc:chartProperty name="credits.href">
                            <hc:propertyExpression><![CDATA[""]]></hc:propertyExpression>
                        </hc:chartProperty>
                        <hc:chartProperty name="credits.text">
                            <hc:propertyExpression><![CDATA[""]]></hc:propertyExpression>
                        </hc:chartProperty>
                        <hc:chartProperty name="title.text">
                            <hc:propertyExpression><![CDATA[""]]></hc:propertyExpression>
                        </hc:chartProperty>
                        <hc:chartProperty name="yAxis.title.text">
                            <hc:propertyExpression><![CDATA[""]]></hc:propertyExpression>
                        </hc:chartProperty>
                    </hc:chartSetting>
                    <multiAxisData>
                        <multiAxisDataset/>
                        <dataAxis axis="Rows">
                            <axisLevel name="Name">
                                <labelExpression><![CDATA["Level Label expression"]]></labelExpression>
                                <axisLevelBucket class="java.lang.String">
                                    <bucketExpression><![CDATA[$F{Name}]]></bucketExpression>
                                </axisLevelBucket>
                            </axisLevel>
                        </dataAxis>
                        <dataAxis axis="Columns"/>
                        <multiAxisMeasure name="Measure1" class="java.lang.Integer" calculation="Nothing">
                            <labelExpression><![CDATA["f"]]></labelExpression>
                            <valueExpression><![CDATA[$F{AppliedQuantity}]]></valueExpression>
                        </multiAxisMeasure>
                    </multiAxisData>
                    <hc:series name="Measure1"/>
                </hc:chart>
            </componentElement>
        </band>
    </summary>
</jasperReport>

有关于此的任何想法吗?

1 个答案:

答案 0 :(得分:0)

net.sf.jasperreports.chart.*属性适用于社区/开源JasperReports库中构建的图表(基于JFreeChart)。

对于HTML5图表 - JasperReports Professional的一部分 - 您需要做的是在图表中设置yAxis.tickInterval属性:

<hc:chartProperty name="yAxis.tickInterval">
    <hc:propertyExpression><![CDATA[500]]></hc:propertyExpression>
</hc:chartProperty>