Charts 如何在iReport中用DB数据绘制散点图?

Charts 如何在iReport中用DB数据绘制散点图?,charts,jasper-reports,ireport,scatter-plot,Charts,Jasper Reports,Ireport,Scatter Plot,我添加了DB查询,使用它我可以在详细视图中查看数据 但无法绘制散点图。X轴有一列,Y轴有一列,标签名称有一列。如何使用iReport绘制此图 我已经添加了散点图调色板,但没有得到任何关于如何设置X轴和Y轴的列以绘制所有点的文档。我在散点图中只得到了一点。您的第一个问题是将数据源传递给图表,如果您使用的是主数据源,则需要将图表放在摘要带中,因为您的数据源在标题带中没有准备好,并且正在细节带上迭代,因此它将无法正常工作(注意:如果您使用的数据源也是详细的,那么它需要是一个标签) 如果您需要在其他波段

我添加了DB查询,使用它我可以在详细视图中查看数据

但无法绘制散点图。X轴有一列,Y轴有一列,标签名称有一列。如何使用iReport绘制此图


我已经添加了散点图调色板,但没有得到任何关于如何设置X轴和Y轴的列以绘制所有点的文档。我在散点图中只得到了一点。

您的第一个问题是将数据源传递给图表,如果您使用的是主数据源,则需要将图表放在
摘要
带中,因为您的数据源在
标题
带中没有准备好,并且正在
细节
带上迭代,因此它将无法正常工作(注意:如果您使用的数据源也是详细的,那么它需要是一个标签)

如果您需要在其他波段使用它,那么
摘要
波段我建议您制作一个子报告,并将其包含在所需波段传递图表数据源或到子报告的连接中

散点图通过使用
来实现,以设置使用
标记的系列和x、y数据

在iReport中,右键单击图表,选择图表数据,选择选项卡详细信息 和添加XY系列

完整的jrxml示例

<?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="ScatterPlot" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="ebc92eb9-c769-4888-98de-b1d60670725c">
    <queryString>
        <![CDATA[]]>
    </queryString>
    <field name="Series" class="java.lang.String"/>
    <field name="X" class="java.lang.Double"/>
    <field name="Y" class="java.lang.Double"/>
    <columnHeader>
        <band height="20">
            <staticText>
                <reportElement x="100" y="0" width="100" height="20" uuid="978a0093-4e67-40e3-baee-8340ccc23b8f"/>
                <box topPadding="2" leftPadding="2" bottomPadding="2" rightPadding="2">
                    <pen lineWidth="0.5"/>
                    <topPen lineWidth="0.5"/>
                    <leftPen lineWidth="0.5"/>
                    <bottomPen lineWidth="0.5"/>
                    <rightPen lineWidth="0.5"/>
                </box>
                <textElement textAlignment="Center" verticalAlignment="Middle">
                    <font isBold="true"/>
                </textElement>
                <text><![CDATA[X]]></text>
            </staticText>
            <staticText>
                <reportElement x="0" y="0" width="100" height="20" uuid="b97c9f78-ad74-4d9f-af46-ee3fc3e5351f"/>
                <box topPadding="2" leftPadding="2" bottomPadding="2" rightPadding="2">
                    <pen lineWidth="0.5"/>
                    <topPen lineWidth="0.5"/>
                    <leftPen lineWidth="0.5"/>
                    <bottomPen lineWidth="0.5"/>
                    <rightPen lineWidth="0.5"/>
                </box>
                <textElement verticalAlignment="Middle">
                    <font isBold="true"/>
                </textElement>
                <text><![CDATA[Series]]></text>
            </staticText>
            <staticText>
                <reportElement x="200" y="0" width="100" height="20" uuid="e50dab9b-c8f7-4cc0-a8f7-3ca4438c746b"/>
                <box topPadding="2" leftPadding="2" bottomPadding="2" rightPadding="2">
                    <pen lineWidth="0.5"/>
                    <topPen lineWidth="0.5"/>
                    <leftPen lineWidth="0.5"/>
                    <bottomPen lineWidth="0.5"/>
                    <rightPen lineWidth="0.5"/>
                </box>
                <textElement textAlignment="Center" verticalAlignment="Middle">
                    <font isBold="true"/>
                </textElement>
                <text><![CDATA[Y]]></text>
            </staticText>
        </band>
    </columnHeader>
    <detail>
        <band height="20">
            <textField pattern="###0.00">
                <reportElement x="100" y="0" width="100" height="20" uuid="8d365885-a6f8-40be-8ad0-012e45a37543"/>
                <box topPadding="2" leftPadding="2" bottomPadding="2" rightPadding="2">
                    <pen lineWidth="0.5"/>
                    <topPen lineWidth="0.5"/>
                    <leftPen lineWidth="0.5"/>
                    <bottomPen lineWidth="0.5"/>
                    <rightPen lineWidth="0.5"/>
                </box>
                <textElement textAlignment="Right" verticalAlignment="Middle"/>
                <textFieldExpression><![CDATA[$F{X}]]></textFieldExpression>
            </textField>
            <textField>
                <reportElement x="0" y="0" width="100" height="20" uuid="f08b3a38-8130-4609-b70d-b10b9d8d648b"/>
                <box topPadding="2" leftPadding="2" bottomPadding="2" rightPadding="2">
                    <pen lineWidth="0.5"/>
                    <topPen lineWidth="0.5"/>
                    <leftPen lineWidth="0.5"/>
                    <bottomPen lineWidth="0.5"/>
                    <rightPen lineWidth="0.5"/>
                </box>
                <textElement verticalAlignment="Middle"/>
                <textFieldExpression><![CDATA[$F{Series}]]></textFieldExpression>
            </textField>
            <textField pattern="###0.00">
                <reportElement x="200" y="0" width="100" height="20" uuid="83638866-5bd1-4ee4-ac1a-455c406f3621"/>
                <box topPadding="2" leftPadding="2" bottomPadding="2" rightPadding="2">
                    <pen lineWidth="0.5"/>
                    <topPen lineWidth="0.5"/>
                    <leftPen lineWidth="0.5"/>
                    <bottomPen lineWidth="0.5"/>
                    <rightPen lineWidth="0.5"/>
                </box>
                <textElement textAlignment="Right" verticalAlignment="Middle"/>
                <textFieldExpression><![CDATA[$F{Y}]]></textFieldExpression>
            </textField>
        </band>
    </detail>
    <summary>
        <band height="257" splitType="Stretch">
            <scatterChart>
                <chart>
                    <reportElement x="4" y="16" width="280" height="237" uuid="b9968e83-13aa-48fc-acf5-3d646f45f28d"/>
                    <chartTitle/>
                    <chartSubtitle/>
                    <chartLegend/>
                </chart>
                <xyDataset>
                    <xySeries>
                        <seriesExpression><![CDATA[$F{Series}]]></seriesExpression>
                        <xValueExpression><![CDATA[$F{X}]]></xValueExpression>
                        <yValueExpression><![CDATA[$F{Y}]]></yValueExpression>
                    </xySeries>
                </xyDataset>
                <scatterPlot isShowLines="false" isShowShapes="true">
                    <plot/>
                    <xAxisFormat>
                        <axisFormat/>
                    </xAxisFormat>
                    <yAxisFormat>
                        <axisFormat/>
                    </yAxisFormat>
                </scatterPlot>
            </scatterChart>
        </band>
    </summary>
</jasperReport>
+--------+-----+-----+
| Series |  X  |  Y  |
+--------+-----+-----+
| A      | 1.2 | 0.3 |
| A      | 0.5 | 0.2 |
| B      | 0.7 | 0.6 |
| B      | 0.1 | 0.5 |
+--------+-----+-----+
结果

若要配置图表,请使用图表上的属性设置,如果您需要特殊配置,而这些配置无法通过您可以实现的属性实现

看看这个例子


添加接近票数的问题有什么不对?仅供参考,iReport在很长一段时间内都不受欢迎
如何使用iReport工具绘制此问题?
-这是一个太宽泛的问题,不是吗?我无法使用iReport工具在散点图上绘制多个点?我肯定缺少一些配置。你确定iReport是正确的吗已弃用?@AlexK
您确定ireport已弃用吗?
-是的。最好使用如何制作象限?例如X轴将绘制在Y轴的中间,Y轴将绘制在X轴的中间?为此,您可能需要ChartCustomizer,jfreechart public void setDomainZeroBaselineVisible中有一个方法(布尔值可见);,但您可能应该提出另一个问题,确切说明您需要什么。@SomnathMuluk,对此仍有问题吗?
<?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="ScatterPlot" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="ebc92eb9-c769-4888-98de-b1d60670725c">
    <queryString>
        <![CDATA[]]>
    </queryString>
    <field name="Series" class="java.lang.String"/>
    <field name="X" class="java.lang.Double"/>
    <field name="Y" class="java.lang.Double"/>
    <columnHeader>
        <band height="20">
            <staticText>
                <reportElement x="100" y="0" width="100" height="20" uuid="978a0093-4e67-40e3-baee-8340ccc23b8f"/>
                <box topPadding="2" leftPadding="2" bottomPadding="2" rightPadding="2">
                    <pen lineWidth="0.5"/>
                    <topPen lineWidth="0.5"/>
                    <leftPen lineWidth="0.5"/>
                    <bottomPen lineWidth="0.5"/>
                    <rightPen lineWidth="0.5"/>
                </box>
                <textElement textAlignment="Center" verticalAlignment="Middle">
                    <font isBold="true"/>
                </textElement>
                <text><![CDATA[X]]></text>
            </staticText>
            <staticText>
                <reportElement x="0" y="0" width="100" height="20" uuid="b97c9f78-ad74-4d9f-af46-ee3fc3e5351f"/>
                <box topPadding="2" leftPadding="2" bottomPadding="2" rightPadding="2">
                    <pen lineWidth="0.5"/>
                    <topPen lineWidth="0.5"/>
                    <leftPen lineWidth="0.5"/>
                    <bottomPen lineWidth="0.5"/>
                    <rightPen lineWidth="0.5"/>
                </box>
                <textElement verticalAlignment="Middle">
                    <font isBold="true"/>
                </textElement>
                <text><![CDATA[Series]]></text>
            </staticText>
            <staticText>
                <reportElement x="200" y="0" width="100" height="20" uuid="e50dab9b-c8f7-4cc0-a8f7-3ca4438c746b"/>
                <box topPadding="2" leftPadding="2" bottomPadding="2" rightPadding="2">
                    <pen lineWidth="0.5"/>
                    <topPen lineWidth="0.5"/>
                    <leftPen lineWidth="0.5"/>
                    <bottomPen lineWidth="0.5"/>
                    <rightPen lineWidth="0.5"/>
                </box>
                <textElement textAlignment="Center" verticalAlignment="Middle">
                    <font isBold="true"/>
                </textElement>
                <text><![CDATA[Y]]></text>
            </staticText>
        </band>
    </columnHeader>
    <detail>
        <band height="20">
            <textField pattern="###0.00">
                <reportElement x="100" y="0" width="100" height="20" uuid="8d365885-a6f8-40be-8ad0-012e45a37543"/>
                <box topPadding="2" leftPadding="2" bottomPadding="2" rightPadding="2">
                    <pen lineWidth="0.5"/>
                    <topPen lineWidth="0.5"/>
                    <leftPen lineWidth="0.5"/>
                    <bottomPen lineWidth="0.5"/>
                    <rightPen lineWidth="0.5"/>
                </box>
                <textElement textAlignment="Right" verticalAlignment="Middle"/>
                <textFieldExpression><![CDATA[$F{X}]]></textFieldExpression>
            </textField>
            <textField>
                <reportElement x="0" y="0" width="100" height="20" uuid="f08b3a38-8130-4609-b70d-b10b9d8d648b"/>
                <box topPadding="2" leftPadding="2" bottomPadding="2" rightPadding="2">
                    <pen lineWidth="0.5"/>
                    <topPen lineWidth="0.5"/>
                    <leftPen lineWidth="0.5"/>
                    <bottomPen lineWidth="0.5"/>
                    <rightPen lineWidth="0.5"/>
                </box>
                <textElement verticalAlignment="Middle"/>
                <textFieldExpression><![CDATA[$F{Series}]]></textFieldExpression>
            </textField>
            <textField pattern="###0.00">
                <reportElement x="200" y="0" width="100" height="20" uuid="83638866-5bd1-4ee4-ac1a-455c406f3621"/>
                <box topPadding="2" leftPadding="2" bottomPadding="2" rightPadding="2">
                    <pen lineWidth="0.5"/>
                    <topPen lineWidth="0.5"/>
                    <leftPen lineWidth="0.5"/>
                    <bottomPen lineWidth="0.5"/>
                    <rightPen lineWidth="0.5"/>
                </box>
                <textElement textAlignment="Right" verticalAlignment="Middle"/>
                <textFieldExpression><![CDATA[$F{Y}]]></textFieldExpression>
            </textField>
        </band>
    </detail>
    <summary>
        <band height="257" splitType="Stretch">
            <scatterChart>
                <chart>
                    <reportElement x="4" y="16" width="280" height="237" uuid="b9968e83-13aa-48fc-acf5-3d646f45f28d"/>
                    <chartTitle/>
                    <chartSubtitle/>
                    <chartLegend/>
                </chart>
                <xyDataset>
                    <xySeries>
                        <seriesExpression><![CDATA[$F{Series}]]></seriesExpression>
                        <xValueExpression><![CDATA[$F{X}]]></xValueExpression>
                        <yValueExpression><![CDATA[$F{Y}]]></yValueExpression>
                    </xySeries>
                </xyDataset>
                <scatterPlot isShowLines="false" isShowShapes="true">
                    <plot/>
                    <xAxisFormat>
                        <axisFormat/>
                    </xAxisFormat>
                    <yAxisFormat>
                        <axisFormat/>
                    </yAxisFormat>
                </scatterPlot>
            </scatterChart>
        </band>
    </summary>
</jasperReport>
+--------+-----+-----+
| Series |  X  |  Y  |
+--------+-----+-----+
| A      | 1.2 | 0.3 |
| A      | 0.5 | 0.2 |
| B      | 0.7 | 0.6 |
| B      | 0.1 | 0.5 |
+--------+-----+-----+