2013-08-05 2 views
1

У меня есть диаграмма с высоким графиком с серией участков участка и линейный график с диаграммой, также имеющей исходный цвет фона. На диаграмме можно включать и выключать цвета области и фона, щелкая в легенде (см. Рабочий jsfiddle). Все работает нормально, за исключением случаев, когда вы выключаете цвет области/фона и пытаетесь экспортировать диаграмму. Экспорт всегда показывает исходный цвет фона.Highcharts исходный цвет фона всегда экспортируется

http://jsfiddle.net/lamarant/BHkmw/

код, который изменяет цвет фона выглядит следующим образом:

if (doHide) { 
    this.chart.plotBackground.attr({ 
     fill: '#fff' 
    }); 
} else { 
    this.chart.plotBackground.attr({ 
     fill: '#000' 
    }); 
} 

Любые идеи?

ответ

3

Это связано с тем, что во время экспорта диаграмма генерируется снова, поэтому не включает динамические параметры (например, attr()). Таким образом, вы можете установить глобальную переменную, которая будет сохранять «текущий» фон, а при экспорте опций (chartOptions) используется событие загрузки, в котором будет установлен правильный фон.

exporting: { 
      chartOptions: { 
       chart: { 
        events: { 
         load: function() { 
          this.plotBackground.attr({ 
           fill: globalBackground 
          }); 
         } 

        } 
       } 
      } 
     }, 

http://jsfiddle.net/BHkmw/9/

+0

это прекрасно. благодаря! – lamarant

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