2011-12-16 169 views
4
從文件的多個系列

我已經得到形式的數據文件:繪製使用的Gnuplot

Series_1 "12-Dec-2011 12:00" 32 
Series_1 "12-Dec-2011 12:01" 29 
Series_1 "12-Dec-2011 12:02" 27 
Series_1 "12-Dec-2011 12:04" 23 

Series_2 "12-Dec-2011 12:01" 45 
Series_2 "12-Dec-2011 12:02" 43 
Series_2 "12-Dec-2011 12:04" 38 

其中我想繪製的數量上使用的gnuplot同積系列,但我米新gnuplot,我不知道如何在這裏構造using條款。

我想繪製第2列,日期/時間作爲X軸,第3列作爲Y軸,其後的部分被覆蓋。這可能嗎?當然X軸並不總是在第一列?

我想:

plot "datafile.dat" using 2:3 title 'Hits' 

但得到的錯誤:

x range is invalid 

誰能告訴我我要去哪裏錯了嗎?

+0

還看到:HTTP ://stackoverflow.com/questions/12818797/gnuplot-plotting-several-datasets-with-titles-from-one-file – kolypto 2014-08-29 00:00:29

回答

7

爲了繪製x軸上的日期/時間序列,您需要set xdata time。接下來,您需要告訴gnuplot日期/時間數據的格式。在你的情況下,

set timefmt "%d-%b-%Y %H:%M" 

應該做的伎倆。一些例子,以及%X - 同義詞顯示爲here

您可能想要設置x軸應顯示的格式。在你的情況下,也許

set format x "%H:%M" 

會有道理。

我無法用日期/時間周圍的引號繪製數據。有了這些數據文件(Data.csv):

Series_1 12-Dec-2011 12:00 32 
Series_1 12-Dec-2011 12:01 29 
Series_1 12-Dec-2011 12:02 27 
Series_1 12-Dec-2011 12:03 23 

Series_2 12-Dec-2011 12:01 45 
Series_2 12-Dec-2011 12:02 43 
Series_2 12-Dec-2011 12:04 38 

與此腳本:

set xdata time 
set timefmt "%d-%b-%Y %H:%M" 
set format x "%H:%M" 

plot "Data.csv" u 2:4 w l 

你應該得到這個

enter image description here

結果。

+0

謝謝。我將這些引用包括在幫助部分中,它指出:...空白將每個記錄分成若干列。但是,在對列進行計數時,雙引號內的空格會被忽略,因此以下數據文件行包含三列: 1.0「第二列」3.0 – 2011-12-16 14:26:55

10

擴大@ Woltan的回答是:如果你想在一個不同的顏色/風格各部分,使用index(但你必須通過 emtpy線分離部分):

plot 'i' index 0 using 2:4 with lines, '' index 1 using 2:4 with lines 
+0

+1同樣,儘管包含索引^^ – Woltan 2011-12-16 14:30:02