2015-10-20 116 views
0

數據的格式是這樣的:從CSV數據如何創建圖表

TESTID Result Timestamp 
a   1   1 
a   1.2  1.02 
a   1.9  2.61 
b   1   0 
b   0.2  0.99 

現在我想創建線圖,二人在此情況下(a和b)。數據範圍由第一列定義,第二列指示X值和第三個Y值。

我正在尋找一種方法來做到這一點在libreoffice鈣,但Excel甚至gnuplot都很好,只要他們工作。


編輯:

要澄清,這不是一個簡單的單一線圖。在這種情況下,「a」有2行,「b」有2行。行數不是預定義的,可能有任意數量的行。


編輯:

我很抱歉,如果這是太簡單的要求,但我浪費在這個太多時間才找到了方便,不結垢的方法來做到這一點。

+0

你應該能夠做一個XY圖與您最喜愛的電子表格程序。如果你從來沒有使用過,這是尋求幫助的錯誤地方。順便說一句。你顯示的不是逗號分隔值。 – Karl

+0

請不要事先判斷。這不是一件容易的事情,我的同事告訴說,編寫libreoffice來做這件事是不可能的,我應該用matlab來做。我沒有matlab,我也不知道如何正確使用它。是的,那不是CSV。我是這樣寫的,所以它更容易閱讀。我已經找到了一種做法,它看起來並不像正確的方式。 – 0xbaadf00d

+0

請注意,在這種情況下,我需要圖中的兩條線,一條爲a,另一條爲b。此外,行數不是一成不變的,可能有多達100行。 – 0xbaadf00d

回答

2

這是一個黑客,但工程。

基本上這與評論中的一個相同,但是工作量少一點。

創建樞軸表出的數據的,具有:

  • TESTID爲列
  • 時間戳爲行
  • 結果作爲值

然後創建一個XY散點圖(不是在Excel中透視表圖)。使用數據透視表的內容繪製數據,在最後跳過Sum,然後使用帶空單元格的矩陣。

LibreOffice可以正確執行所有操作,但使用excel還有一步。

您需要告訴Excel如何處理空單元格,右鍵單擊圖形並選擇「選擇數據...」,打開一個對話框,單擊「隱藏和空單元格」,選擇「連接數據點行「或任何你喜歡的,點擊確定,你就完成了。

0

編輯:ooops,剛剛發現這個解決方案已經被@Lryl建議在評論中......也許我應該保留答案作爲插圖嗎?請給出意見...

隨着LibreOffice的,沒有數據透視表,但是同樣的方法:

  1. 導入CSV:

    enter image description here

  2. D2,請輸入:=IF($A2="a";$B2;"");向下拖動以處理來自列B的所有a值;

  3. 將公式從D2複製到E2,更改爲:=IF($A2="b";$B2;"");拖下來處理列B中的所有b值;
  4. 現在,您具有與Excel數據透視表相同的功能。添加列標題abD1/E1

    enter image description here

  5. 選擇C1:E6;

  6. 創建X/Y散點圖,用排序的x值:

    enter image description here

這導致:

enter image description here