在primefaces饼图上显示小数位

时间:2012-10-26 08:55:09

标签: jsf primefaces pie-chart

我想检查如何显示primefaces ver 3.3饼图标签的小数?

目前,我的图表中有两个比例。标签A和标签B.标签A有一个非常大的数字,如100000,但标签B有100.因此,在饼图中,标签A不是100%。但是,primefaces将其转换为100%,这是错误的。有什么方法可以在饼图上显示小数位而不是整数作为标签吗?

2 个答案:

答案 0 :(得分:4)

定义扩展器功能,如:

function ext() {
    this.cfg.seriesDefaults.rendererOptions.dataLabelFormatString = '%.4s%%';
    this.cfg.seriesDefaults.rendererOptions.dataLabelThreshold = 0;
}

这将格式化输出标签,以显示小数点后最多4位数的百分比。另外,jqPlot默认情况下,对于小于3%的区域,不会显示任何标签。您必须使用dataLabelThreshold = 0覆盖此值。

最后在p:pieChart上附加此扩展程序功能:

<p:pieChart id="sample" value="#{testClazz.pieModel}"
                extender="ext" showDataLabels="true"/>

答案 1 :(得分:0)

定义扩展器功能,如:

function ext() {
    this.cfg.seriesDefaults.rendererOptions.dataLabelFormatString = '%#.4f';
    this.cfg.seriesDefaults.rendererOptions.dataLabelThreshold = 0;
}

在我的情况下'%.4s%%'(PF 4.0)不起作用,所以我没有使用'%#.4f'工作正常。