2013-04-09 6 views
4

В Highcharts я использую форматтера dataLabel, чтобы вернуть пустое строковое значение для нулевых значений. Это эффективно скрывает метку для нулевых значений. Однако на круговых диаграммах существует ориентир, указывающий на каждый кусочек пирога, даже если срез имеет нулевое значение. Я не могу удалить эти рекомендации без прямого манипулирования элементами DOM. Я хотел бы сохранить пустые кусочки пирога в диаграмме, потому что я динамически обновляю диаграмму на основе критериев фильтра, управляемых пользователем, но я хотел бы скрыть руководящие принципы, указывающие на пустые кусочки пирога.Ссылки на ярлыки на круговых диаграммах Highcharts

Кто-нибудь знает, как настроить Highcharts удалить рекомендации, указывающие на пустые кусочки пирога? Я могу очистить этикетку сам, используя форматировщик ниже:

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

ответ

1

Когда функция форматировщик оценивает значение для отображения, контекст имеет доступ к элемент путевой линии. Я был в состоянии скрыть руководство, сделав следующее изменение форматере:

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"); 

    ... 
} 
+0

Хорошо, но почему вы не можете использовать return null? –

+0

Возврат нулевого значения, похоже, не приводит к исчезновению ссылки на пустой кусочек пирога. –

2

Вы можете попробовать использовать:

if(this.y == 0) 
          return null  
         else 
          return this.y 
+0

Это работало. + 1 – kiranvj

0

Сделайте ширину соединителя 0.

dataLabels: { 
    connectorWidth: 0, 
    ... 
} 
Смежные вопросы