4

在 Highcharts 中,我一直在使用 dataLabel 格式化程序为零值返回一个空字符串值。这有效地隐藏了零值的标签。但是,在饼图中,有一个指向每个饼图切片的指南,即使该切片的值为零。如果不直接操作 DOM 元素,我似乎无法删除这些准则。我想在图表中保留空饼片,因为我正在根据用户操作的过滤条件动态更新图表,但我想隐藏指向空饼片的指南。

有谁知道配置 Highcharts 的方法删除指向空饼片的指南?我可以使用下面的格式化程序清除标签本身:

formatter: function ()
{
   var y = this.y;
   if (y == 0)
     return "";
   ...
}
4

3 回答 3

2

您可以尝试使用:

 if(this.y == 0)
                            return null    
                        else
                            return this.y
于 2013-04-09T13:08:49.523 回答
2

当格式化程序函数评估要显示的值时,上下文可以访问指南路径元素。通过对格式化程序进行以下更改,我能够隐藏指南:

formatter: function ()
{
  var y = this.y;
  //Hide the labels for empty pie slices
  if (y == 0)
  {
    //If there is a pie chart label guideline, hide it
     if (this.point.connector)
        $(this.point.connector.element).attr("stroke", "#FFFFFF");
    return "";
  }
  //If the label guideline was previously hidden, show it
  if (this.point.connector)
     $(this.point.connector.element).attr("stroke", "#000000");

  ...
 }
于 2013-04-10T12:35:08.150 回答
0

使连接器宽度为 0。

dataLabels: {
    connectorWidth: 0,
    ...
}
于 2016-06-23T23:55:28.063 回答