我想鏈接一對在highcharts的系列,以便點擊圖例中的任何一個打開/關閉對中的兩個。highcharts鏈接系列,使一個關閉關閉另一個
例如,in this fiddle,如果我在圖例中單擊1A
我想它也關閉2A
但留下1B
和2B
不受影響。點擊2A
也應該關閉1A
,即鏈接應該雙向工作。
有沒有辦法做到這一點?
我想鏈接一對在highcharts的系列,以便點擊圖例中的任何一個打開/關閉對中的兩個。highcharts鏈接系列,使一個關閉關閉另一個
例如,in this fiddle,如果我在圖例中單擊1A
我想它也關閉2A
但留下1B
和2B
不受影響。點擊2A
也應該關閉1A
,即鏈接應該雙向工作。
有沒有辦法做到這一點?
您必須處理legendItemClick
事件並專門隱藏(並顯示)「姐妹」系列。
我有一個運行示例in this jsFiddle。
請注意,我使用links
變量作爲獲取給定系列的「姐妹」系列的簡單方法。
另請注意,我已經爲每個系列添加了一個id
,以便chart.get()
在給定其ID時返回該系列。
您還可以使用從Highcharts linkedTo
選項,請參見:http://jsfiddle.net/GCqsf/4/
只有一個極限 - 連接系列是不是傳說中顯示的,所以也許它可能不適合你的最好的例子。自Highcharts 3.0.7以來,您可以設置series.showInLegend = true
以在圖例中顯示鏈接的系列。
這是一個很好的建議和有用的知道,但你是對的,我需要在傳說中的所有系列,因此不理想的這個問題 – harryg
供參考:自Highcharts 3.0.7以來,你可以簡單地設置爲連接系列'showInLegend',所以無論如何他們將被顯示。 –
太好了。假設我有一個與數據一起輸出的id,表示每個系列屬於哪個「家族」。有沒有辦法做到這一點,沒有'sisterseries'陣列?例如。像這個小提琴一樣:http://jsfiddle.net/GCqsf/2/ – harryg
'id'應該是唯一的,否則你不能使用'chart.get()'。在這種情況下,您將不得不爲「家庭」過濾「chart.series」。像這樣顛覆'id'有點兒「髒」,但它起作用:[jsFiddle](http://jsfiddle.net/ssarabando/GCqsf/3/)。 – ssarabando
嗯,你的第一種方法可能是更優雅的方式。我的數據來自php,但我設法編寫了一個腳本來創建一個「姐妹」數組。非常感謝。 – harryg