2017-06-21 13 views
0

以下は、Highchartで特定の条件で凡例を有効/無効にするために作成したスクリプトです。しかし、それは動作していません。Highcharts Legend 'enabled'関数が動作しない

   legend: { 
       layout: 'horizontal', 
       itemStyle: { color: '#333333', cursor: 'none', fontSize: '10px', fontWeight: 'normal' }, 
       labelFormatter: function() { 
        return this.name; 
       }, 
       enabled: function() { 
        if (ChartType == "column") { 
         return true; 
        } else { 
         return false; 
        } 
       } 
      }, 

機能のように思われません。私が 'enabled:true'と言えば、うまく動作します。

答えて

0

Highchart後処理に条件をシフトする方が良いでしょう:

var type = 'show', display = true; 
if (ChartType == "column") { 
    type = 'hide'; 
    display = false; 
} 

chart.legend.group[type](); 
chart.legend.box[type](); 
chart.legend.display = display; 
chart.legend.render(); 
+0

Thnq。 @VõMinh Phongによる回答/コメント。問題を解決してください –

+0

@SandeepMogaveer、どちらもあなた次第です – FieryCat

0

enabledのタイプはブール型であるため、関数に設定することはできません。

http://api.highcharts.com/highcharts/legend.enabled

+0

ああ...右。提案できる回避策はありますか? –

+0

変数を宣言することができます。たとえば、enableのようにデフォルトをfalseに設定し、Chartを処理する前に関数を宣言します。 'function(){ if(ChartType ==" column "){ enable = true; } else { enable = false; } ' –

+0

恐ろしい男。問題は解決しました。どうもありがとうございます。 –

関連する問題