2015-03-05 3 views
0

Использование точечных сетевых диаграмм и форматирования меток для отображения только определенных элементов в легенде отображает значения, которые были возвращены как '.Легенда круговой диаграммы показывает пустые значения

.SetLegend(new Legend { Enabled = true, LabelFormatter = "function() { if (this.y >= 5) { return this.name; } else { return ''; } }" }) 

Legend display

ответ

1

Вы можете отключить легенду по умолчанию и создать свой собственный, как HTML. Затем вы можете контролировать, какая точка должна быть или не отображаться.

Пример: http://jsfiddle.net/N3KAC/1/

$legend = $('#customLegend'); 

    $.each(chart.series[0].data, function (j, data) { 

     $legend.append('<div class="item"><div class="symbol" style="background-color:'+data.color+'"></div><div class="serieName" id="">' + data.name + '</div></div>'); 

    }); 

    $('#customLegend .item').click(function(){ 
     var inx = $(this).index(), 
      point = chart.series[0].data[inx]; 

     if(point.visible) 
      point.setVisible(false); 
     else 
      point.setVisible(true); 
    });   
0

Форматировщик форматирует только текст, который будет отображен - он не определяет, является ли или нет запись легенды для серии.

Что вам нужно, это свойство , и вам нужно будет выполнить проверку на объект серии, а не на легенду.

Ссылка:

+0

Это работает, если у вас есть несколько серий, но для круговой диаграммы вы один ряд с несколькими точками. Поэтому я не могу запускать чек на каждой серии. –

Смежные вопросы