1

如何在条形图中的条形图上显示数据点?

我不想使用只有在鼠标悬停时才会突出显示数据点的数据提示或工具提示。

我想始终在栏上显示数据点。

有什么正确的方法可以得到它吗?

谢谢。

我想要这样

条形数据点

以下是我的代码

<p:barChart id="barChartId" value="#{myBean.myModel}"             
        orientation="horizontal"             
        stacked="true" extender="ext" animate="true" shadow="false" />              
<h:outputScript>         
  function ext() {  
    this.cfg.highlighter = {
             useAxesFormatters: false,
             tooltipAxes: 'x'   
    };      
    this.cfg.legend = {
            show: true,
            location: 'ne',
            placement: 'outside'
    }; 
    this.cfg.seriesDefaults = {
            pointLabels : { show: true },
    };              
  }        
</h:outputScript>

在这里,荧光笔和图例工作正常,但点标签未显示在栏上

4

2 回答 2

6

不确定它是否会起作用......

使用 的extender<p:barChart像这样:

<p:barChart value="#{myBean.myModel}" widgetVar="myBarChart" extender="my_ext"/>


<script type="text/javascript">
    function my_ext() {
        this.cfg.seriesDefaults = {
            renderer:$.jqplot.BarRenderer,
            pointLabels: {show: true}
        };
        this.cfg.stackSeries: true;
    }
</script>

或这个

<script type="text/javascript">
    function my_ext() {
        this.cfg.seriesDefaults = {
            pointLabels: {show: true}
        };
        this.cfg.stackSeries: true;
    }
</script>

另请查看 jqplot 示例:条形图

于 2013-05-01T07:08:51.020 回答
3

以防万一有人没有浏览标记答案的评论,就像我一开始没有做的那样。

问题基本上不在于pointLabels元素的配置,而是原始状态下的 primefaces(从 4.0 开始)没有附带所需的 jqPlot 插件。

因此,实际上解决方案是使所需的插件jqplot.pointLabels.min.js可用。从我提取的错误跟踪器 ( http://code.google.com/p/primefaces/issues/detail?id=5378 ) 中的一张票中,primefaces 使用 jqPlot 版本 1.0.8。

  • 从https://bitbucket.org/cleonello/jqplot/downloads/下载 jqplot 1.0.8
  • 将插件添加到您的项目中(例如src/main/webapp/resources/jqplot-plugins
  • 将插件作为脚本添加到您的页面 ( <h:outputScript library="jqplot-plugins" name="jqplot.pointLabels.min.js" />)
于 2013-11-16T19:50:22.353 回答