2013-07-09 76 views

回答

4

您必須處理legendItemClick事件並專門隱藏(並顯示)「姐妹」系列。

我有一個運行示例in this jsFiddle

請注意,我使用links變量作爲獲取給定系列的「姐妹」系列的簡單方法。

另請注意,我已經爲每個系列添加了一個id,以便chart.get()在給定其ID時返回該系列。

+0

太好了。假設我有一個與數據一起輸出的id,表示每個系列屬於哪個「家族」。有沒有辦法做到這一點,沒有'sisterseries'陣列?例如。像這個小提琴一樣:http://jsfiddle.net/GCqsf/2/ – harryg

+0

'id'應該是唯一的,否則你不能使用'chart.get()'。在這種情況下,您將不得不爲「家庭」過濾「chart.series」。像這樣顛覆'id'有點兒「髒」,但它起作用:[jsFiddle](http://jsfiddle.net/ssarabando/GCqsf/3/)。 – ssarabando

+0

嗯,你的第一種方法可能是更優雅的方式。我的數據來自php,但我設法編寫了一個腳本來創建一個「姐妹」數組。非常感謝。 – harryg

11

您還可以使用從Highcharts linkedTo選項,請參見:http://jsfiddle.net/GCqsf/4/

只有一個極限 - 連接系列是不是傳說中顯示的,所以也許它可能不適合你的最好的例子。自Highcharts 3.0.7以來,您可以設置series.showInLegend = true以在圖例中顯示鏈接的系列。

+0

這是一個很好的建議和有用的知道,但你是對的,我需要在傳說中的所有系列,因此不理想的這個問題 – harryg

+2

供參考:自Highcharts 3.0.7以來,你可以簡單地設置爲連接系列'showInLegend',所以無論如何他們將被顯示。 –