2012-10-01 79 views
0

我讀過有關這樣做至少有半打其他問題,我想不出我的怎麼是不同的:http://jsfiddle.net/jshado1/Z5UFg/1/海軍報動態定義多個數據與標籤

我增加了一個功能LoadGraph.check_data我從控制檯運行。這些數據,它輸出運行load_data(1,"199 Water St",7);後:

#mine 
[ { label:"coffee", data:[ [1659] ] }, 
    { label:"cocoa", data:[ [717] ] }, 
    { label:"tea", data:[ [206] ] } 
] 

這看起來完全一樣把我當成the example in the doc(略高於圖解選項):

#doc example 
[ { label: "Foo", data: [ [10, 1], [17, -14], [30, 5] ] }, 
    { label: "Bar", data: [ [11, 13], [19, 11], [30, -7] ] } 
] 

我也試過造型我的結構SO answer 5661134後,但那也沒有飛起來(與小提琴中看到的結果完全相同)。

小提琴中的第二張圖應該有三個彼此相鄰的酒吧或者(更好的是)將三個酒吧堆疊在一起。

更新:我添加了一個x值得到以下(但它仍然無法正常工作,小提琴):

#http://jsfiddle.net/jshado1/Z5UFg/3/ 
[ { label:"coffee", data:[ [7, 1659] ] }, 
    { label:"cocoa", data:[ [7, 717] ] }, 
    { label:"tea", data:[ [7, 206] ] } 
] 
#http://jsfiddle.net/jshado1/Z5UFg/2/ 
[ { label:"coffee", data:[ [0, 1659] ] }, 
    { label:"cocoa", data:[ [1, 717] ] }, 
    { label:"tea", data:[ [2, 206] ] } 
] 

如果我拿出對象岬(例如,標籤),它的工作原理(但我需要找出原因f_opts.series.stack=true不工作,我想,既然所有的3間酒吧是藍色,它是治療所有三個作爲同一系列):v4

更新2是這些應該在2個不同的地方?我的意思是應該將標籤+數據數組對象放在選項對象中,數據也放在數據數組中?該文檔很難弄清楚,因爲它從不說明父對象是什麼。

回答

1

我相信this version of the fiddle可能是你想要做的。

問題在於,您將f_data視爲單個對象而不是對象數組,特別是系列對象。 (你通過在[f_data]的劇情調用中強制它成爲一個數組來解決這個問題,但是這會限制你到一個系列。)。你想要做什麼,而不是設置f_data = tmp改爲按一個完整的系列物體插入f_datatmpdata陣列:

f_data.push({label:cat, stack:true, data:tmp}); 

每個系列的對象(在你的f_data陣列中的每個元素)都有其自己的數據和標籤,正如你在我的例子中看到的那樣。

有兩個原因,爲什麼你沒有看到任何堆疊工作:

  1. 您需要包括jquery.flot.stack.js文件,以獲得堆疊功能。 (我在小提琴中添加了鏈接資源。)
  2. 堆疊僅適用於多個系列。您的「深度」視圖將3個重疊的數據點添加到單個系列,而不是創建3個單獨的系列,每個系列各有1個數據點。

我相信我的例子實現了你所期望的結果。如果我錯了,請告訴我。 我標記了添加的新行// NEW以突出顯示更改。

+0

是的! OMG你真了不起 - 謝謝你。我想#2發生了,是一個問題,但我無法弄清楚如何解決它^^, – jacob

1

區別在於您的數據點只包含一個值,而Flot需要[x,y]對。查看文檔的Data Format部分以獲取更多信息。

編輯:它也看起來像你打電話給$ .plot使用[f_data]即使f_data已經是一系列的數組。看起來這是你問題的當前原因。

如果遇到更多問題,您應該嘗試將代碼簡化爲更簡單的示例,然後從中繼續。這已經從一個問題轉化爲一個調試會話。

+0

我試圖給它第二個數據點,但3對共享相同的X值,這也看起來並不喜歡。我嘗試將它添加到第二個圖形中(沒有工作,但仍然無法工作),並且當我嘗試以與第一個圖形(正在工作)相同的方式添加標籤時,它打破了。 – jacob

+0

如果您希望將它們堆疊起來,請查看示例頁面上的堆疊示例。 – DNS

+0

我可以擔心以後再堆疊。 – jacob