2016-05-05 387 views
0

我想更改Highcharts圖例大小(特別是其寬度)。下面是一些代碼我試圖用基於研究,我做的事:在窗口大小調整大小調整Highcharts圖例

  $(window).resize(changeSummaryLayout); 

      function changeSummaryLayout() { 
       var w = window.innerWidth; 
       if (w < 1370 && w > 992) { 
        for (i = 0; i < charts.length; i++) { 
         charts[i].highcharts().setTitle({ x: -5 }); 
         charts[i].highcharts().legend.options.y = 150; 
         charts[i].highcharts().margin[3] = 0; 
         charts[i].highcharts().legend.options.width = 200; 
         charts[i].highcharts().legend.itemStyle.width = 200; 
         for (var index in charts[i].highcharts().series) { 
          charts[i].highcharts().legend.destroyItem(charts[i].highcharts().series[index]); 
         } 
         charts[i].highcharts().legend.render(); 
         //charts[i].highcharts().legend.update({ itemStyle150 }); 
         //charts[i].highcharts().isDirtyLegend = true; 
         //charts[i].highcharts().redraw(); 
         //charts[i].highcharts().isDirtyBox = true; 
        } 
        $('#chartContainer').css('height', '400px'); 
        $('.pieChartTotal').css('height', '390px'); 
        $('.pieChartCanvasSum').css('height', '330px !important'); 
        $('.highcharts-container').children().css('height', '330px'); 
        $('.highcharts-background').attr('height', '330px'); 
       } 

這些解決方案都沒有被worknig改變寬度和,有什麼奇怪的,寬度只得到後,我在懸停我的鼠標更新傳說。任何人都可以向我解釋爲什麼會發生?

有什麼解決方案可以在這裏使用嗎?

+0

你需要調整圖表圖例當圖表調整? – Thorin

回答

0

我想你可以嘗試這樣的:

var chart = new Highcharts.Chart({ 
...... 
}); 


function resizeWindow(){ 
    chart.legend.options.width = widthyouwanttoadd; 
    chart.legend.itemStyle.width = widthyouwanttoadd; 
    for(var index in this.chart.series) { 
     chart.legend.destroyItem(chart.series[index]); 
    } 
    chart.legend.render() 
} 
+0

但是,這正是我在我的問題中發佈的內容,它不工作... – Marek