2013-06-25 28 views
0

我使用Highcharts進行一個項目,在該項目中我必須顯示兩個系列,每個系列都有大約一千個點。 x軸表示日期,y軸表示數量。此外,每個點具有namesMy數據的相關聯的列表是一天按天沒有間隙,以如在高層圖中長系列的奇怪工具提示行爲

var mydata = [ ... 
       {x: theDate, y: theValue, names: theNames}, 
       ... ] 

這樣的結構,其中theNames是一個字符串數組。我可以在工具提示格式化程序中通過this.points.point.names,訪問這些圖表,因爲圖表上顯示的範圍足夠小。如果我更改x軸以使開始日期和結束日期大致相隔一年,那麼工具提示完全不會呈現。

一,我已經試過但到目前爲止被設置turboThreshold限制最長的系列加1設置的長度這讓我至少顯示圖形失敗的可能途徑時mydata.length > 1000(默認值)。但是,如果x軸範圍小於261,則只會顯示工具提示。否則,工具提示將完全消失,就像從中獲取名稱的point.data對象一樣。我不知道是否有辦法將包含它們的數組中的點的名稱(在我的示例中爲myData1myData2)分開,並以某種方式從這些名稱中訪問這些名稱工具提示功能,而不需要通過當前點。

Here是jsFiddle展示此問題的鏈接。

所有幫助表示讚賞!

+0

此外,實際值依賴於瀏覽器和數據顯示...例如,在我的實際項目中,上限顯示(日每天一個值)是379天,並且在Safari上的朋友計算機上使用相同的數據,最長天數爲326. –

回答

2

的問題是在dataGrouping在禁用時精細的工作原理:http://jsfiddle.net/34tfg/1/

DataGrouping是在Highcharts到近似點方法,並顯示它們當圖表的寬度是不夠的,例如如何在寬度爲1 000像素的圖表中顯示10 000點 - >在一個像素中顯示10點..?而當使用dataGrouping時,會創建新點,所以所有自定義選項(如「名稱」等)都會丟失(至少不可訪問)。

代碼:

plotOptions: { 
     line: { 
      dataGrouping: { 
       enabled: false 
      }, 
      turboThreshold: 10000 
     } 
    }, 
+0

非常感謝!這似乎是解決方案。 –