2014-12-03 110 views
2

我想用每种条形图的不同颜色显示primefaces条形图。最贴近我就像是图像:Primefaces条形图中的不同颜色

sample

我想有不同颜色的酒吧,喜欢绿色的“准时”,黄色的“警告”和红色的“逾期”

我试图用model.setSeriesColors("58BA27,FFCC33,F74A4A,F52F2F,A30303"); 但如果我这样做,每个栏应该是一个新的系列,所以我将无法显示标签,因为我想(如图像),我得到了这个..

enter image description here

最后,我怎样才能使它显示出0,1,2,3(整数),而不是重复0_0_0_1_1_1_2_2_2如图片1:/

感谢

回答

7

我用我自己的阅读this jplot documentation解决了这个问题,我这里米发帖希望它可以帮助别人......

为不知何故,在标签是不是为我工作添加extender,我必须把它通过Java代码:

barModel.setSeriesColors("58BA27,FFCC33,F74A4A,F52F2F,A30303"); 
barModel.setExtender("chartExtender"); 

然后JavaScript的内部

<h:outputScript> 
         function chartExtender() {   
         // this = chart widget instance   
         // this.cfg = options  
         this.cfg.seriesDefaults.rendererOptions.varyBarColor = true; 
         } 
         </h:outputScript> 

并完成!

enter image description here

+0

当然它不管用。 PF删除了该属性。 – alexander 2016-05-30 05:30:32

1

我是新来的,所以我不幸地注释不添加到您的答案。 它也适用于我。 一些澄清其他读者:

务必把<h:outputScript>在你<p:chart...,如:

<p:chart type="bar" model="#{bean.someModel}"> 
    <h:outputScript> 
     function chartExtender() { 
      // this = chart widget instance 
      // this.cfg = options 
      this.cfg.seriesDefaults.rendererOptions.varyBarColor = true; 
     } 
    </h:outputScript> 
</p:chart> 

的 “扩展” -Tag已Primefaces 5删除: see this answer