1

チャートを作成すると、primefaces数値スケールが小数点で表示されます。シンプルマンバーのように小数点以下を表示したくないのですが、方法はありますか?
ありがとう

4

1 に答える 1

4

アップデート:

以下に掲載されている回避策は引き続き機能しますが、これを行うためのより適切な解決策を見つけました。extender数値スケールは、関数を介してフォーマットできます。

<p:barChart value="#{testClazz.categoryModel}" legendPosition="ne"
            widgetVar="barChartObj1" extender="ext1"/>

<head></head>ページのタグの間に次の関数を配置します。

<script type="text/javascript">
    function ext1() {
        this.cfg.axes.yaxis.tickOptions = {
            formatString : '%d'
        };
    }
</script>

jqPlotで少し実験した後、プロットが終了した後に軸をリセットすると、小数点がクリアされた後に小数点がクリアされることがわかりました。棒グラフが次のように定義されている場合:

<p:barChart id="basicPlot" value="#{testClazz.categoryModel}" 
    legendPosition="ne" widgetVar="barChartObj"
    title="Basic Bar Chart" min="0" max="270"/>

ページの読み込みが完了したら、次の関数を呼び出します。

<script type="text/javascript">
    $(document).ready( function() {
        setTimeout(formatAxisNumbers, 500);
    });
    function formatAxisNumbers() {
        window.barChartObj.plot.resetAxesScale();
        window.barChartObj.plot.replot();
    }
</script>

両方の軸をリセットする代わりに、次のようにしてxまたはyを個別にresetAxesScaleリセットできることに注意してください。

window.barChartObj.plot.axes.xaxis.resetScale();

また

window.barChartObj.plot.axes.yaxis.resetScale();

タイムアウトを小さくして、よりスムーズな再プロットを実現することもできます。その他のオプションについては、jqPlotのドキュメントを参照してください。

Google Chrome 22.0.1229.94(公式ビルド161065)でテスト済み。

于 2012-10-16T18:40:57.957 に答える