2

私はv4.7iReportJasperReportsを使用しています。

ラベルに各スライスのパーセンテージを表示したいと考えています。「オプション 1 (45.67%)」のようなもの。

多くのサイトを読んだ後、次のスニペットにたどり着きました。

<piePlot labelFormat="{0} ({2})" legendLabelFormat="{0} ({2})">
    <plot/>
    <itemLabel/>
</piePlot>

iReportのドキュメントによると。

  • {0}項目名
  • {1}値
  • {2}パーセンテージ

ただし、iReportまたはJasperReportsでレポートを実行すると、各スライスのラベル ( labelFormat ) ではなく凡例領域 ( legendLabelFormat ) のパーセンテージのみが取得され、パーセンテージはフロートではなく整数として表示されます。

誰かがラベルにパーセンテージを表示する方法を知っていて、可能であれば小数値で表示しますか?

4

1 に答える 1

5

ここで解決策を見つけました。あなたの lableExpression を pieDataset から削除すると、piePlot ラベルが上書きされます。

<pieDataset>
  <keyExpression><![CDATA[$F{GENERATION}]]></keyExpression>
  <valueExpression><![CDATA[$F{SUBTOTAL}]]></valueExpression>
</pieDataset>
<piePlot isShowLabels="false" isCircular="true" labelFormat="({2})" legendLabelFormat="{0}">
  <plot/>
  <itemLabel/>
</piePlot>
于 2013-11-28T15:28:49.660 に答える