在p:chart的数据提示中动态显示x轴标签(条形图)

班戈

使用PrimeFaces p:chart,是否可以在条形图的数据提示中动态显示x轴标签,而不是系列中的“索引”?

例如,如果我有以下代码:

<h:body>                                 
   <p:chart type="bar" model="#{barChartDatatipView.barChartModel}" />                                                                        
</h:body>

@ManagedBean
@ViewScoped
public class BarChartDatatipView {

  public BarChartModel getBarChartModel() {

    BarChartModel model = new BarChartModel();
    ChartSeries chartSeries = new BarChartSeries();
    chartSeries.set("car", 1222);
    chartSeries.set("bus", 3323); 
    model.addSeries(chartSeries);
    return model;
  }
}

数据提示将显示(1,1222)和(2,3323)。我可以将它们显示为(car,1222)和(bus,3323)吗?此外,我希望使用bar模型对其进行动态更新。例如,如果添加了另一个点,如chartSeries.set(“ train”,4455),则数据提示也应相应更新。

我正在使用Java 8,JSF2.2和Primefaces 6.2。

班戈

在花了很长时间研究jqplot结构之后,我终于找到了答案:

Java代码:

@ManagedBean
@ViewScoped
public class BarChartDatatipView {

  public BarChartModel getBarChartModel() {

    BarChartModel model = new BarChartModel();
    ChartSeries chartSeries = new BarChartSeries();
    chartSeries.set("car", 1222);
    chartSeries.set("bus", 3323); 
    model.addSeries(chartSeries);
    model.setDatatipEditor("tooltipContentEditor");  // Set the editor.
    return model;
  }
}

HTML页面:

<html xmlns="http://www.w3.org/1999/xhtml"
  xmlns:h="http://xmlns.jcp.org/jsf/html"
  xmlns:p="http://primefaces.org/ui">

  <h:head>
    <title>Bar Chart - datatip</title>
    <h:outputScript name="js/barchart-datatip.js" />   
  </h:head>
  <h:body>                                                 
    <p:chart type="bar" model="#{barChartDatatipView.barChartModel}" />                                                                        
  </h:body>
</html>

和JavaScript函数:

function tooltipContentEditor(str, seriesIndex, pointIndex, plot) {
    return plot.axes.xaxis.ticks[pointIndex] + ", " + plot.data[seriesIndex][pointIndex];
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在chart.js中,如果从移动设备访问,是否可以隐藏条形图的x轴标签/文本?

matplotlib没有在条形图的x轴上显示第一个标签

如何在所有条形图子图上显示x轴标签?

显示轴和标签 - 条形图 java

Highcharts - 条形图在 Y 轴上显示完整标签

JFreeChart:条形图X轴标签与大型数据集重叠

x轴长标签旋转的可排序条形图

向x轴条形图添加额外的标签

删除标签并在条形图的工具提示中仅显示值

跳过x轴上的重叠标签以获取dc.js中的条形图

如何在MP Android图表(条形图)中设置X轴标签?

如何在ggplot中为数字x轴的条形图添加直接标签

ng2-chart条形图不显示数据/图形标签

设置条形图的x轴以显示月份

工具提示弄乱了 Chart.js 中的条形图

将x轴标签添加到mpandroid条形图仅显示数组列表中的第一个标签

根据X轴数据范围生成R条形图

Angular 设置动态条形图数据和标签

条形图中的 x 轴标签并扩展数据框

R ggvis中的条形图x轴顺序

X轴和右栏中的堆叠条形图

R中ggplot条形图的x轴限制

如何在MATLAB中以条形图扩展x轴

如何在Chart.js条形图的x轴上居中放置条形图?

使用Coreplot布置条形图,并使用labelFormatter在X轴上显示日期。但是条形图没有显示

如何在饼图和条形图标签中显示当前值,例如在工具提示中?

D3.js条形图:使x轴标签与条形对齐,并稍微旋转它们

堆叠的条形图,显示R中的反向标签

如何设置条形图的x轴