2016-06-14 2 views
1

Я строю Highcharts внутри R, используя библиотеку rCharts. Но я думаю, что любой, кто знаком с Javascript или Highcharts, может ответить на мой вопрос. Я включил функцию, позволяющую пользователю ctrl + click выбрать определенную серию.Hightcharts: reset of

Пожалуйста, смотрите это для справки: https://jsfiddle.net/derekrezek/Nkeep/109/

a$plotOptions(
    series = list( 
    events = list(
     legendItemClick = "#! function(e) { 
     var hideAllOthers = e.browserEvent.metaKey|| e.browserEvent.ctrlKey; 
     if (hideAllOthers) { 
      var seriesIndex = this.index; 
      var series = this.chart.series; 
     for (var i = 0; i < series.length; i++) { 
     if (series[i].index === seriesIndex) { 
     if (!series[i].visible) series[i].setVisible(true, false); 
     } else { 
     if (series[i].visible) series[i].setVisible(false, false); 
     } 
     } 
     this.chart.redraw(); 
     return false; 
     }} !#") 
) 
) 

Это не влияет на первоначальную функциональность Highcharts и позволяет пользователю выбрать определенную серию по Ctrl + щелкните элемент легенды. Однако, если у меня есть 50 легенд. После того, как я выберу одну конкретную серию, а затем я хочу, чтобы все остальные серии были возвращены, мне придется щелкнуть все невидимые серии, чтобы снова показать их, что нецелесообразно.

Кто-нибудь знает, как сделать кнопку сброса? или разрешить пользователю ctrl + кликнуть снова, чтобы восстановить исходный график?

Спасибо заранее!

ответ

2

Обратитесь к этому example, я добавил кнопку сброса до destroy и повторно создаст линейную диаграмму со значением по умолчанию.

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