繪製單個資料檔案
預設的 gnuplot 命令 plot
(也只是 p
)繪製帶有列的資料集,下面是 data_set.dat
檔案的形式。
# Prototype of a gnuplot data set
# data_set.dat
# X - X^2 - 2*X - Random
0 0 0 5
1 1 2 15
1.4142 2 2.8284 1
2 4 4 30
3 9 6 26.46
3.1415 9.8696 6.2832 39.11
4 16 8 20
4.5627 20.8182 9.1254 17
5.0 25.0 10.0 25.50
6 36 12 0.908
如你所見,你可以使用浮點表示法在資料集中寫入。現在一切都準備好了資料圖:只輸入
plot "data_set.dat"
gnuplot 將在你的 output
目的地生成一個圖表。預設設定將使用資料檔案的前兩列,分別為 x 和 y。要指定要繪製的列,請使用 using
說明符
plot "data_set.dat" using 2:4
這意味著“使用第 2 列作為 X 繪製檔案,使用第 4 列作為 Y”。如果你的資料集是三維檔案,只需使用 splot
ad 新增 z-column
splot "data_set.dat" using 1:2:3
對於繪製點,還有不同的樣式(請參閱 gnuplot 文件或選擇更多資訊的繪圖樣式 )。如前所述,預設樣式為 point
plot "data_set.dat" using 1:4 with point
這將繪製與你不鍵入 with point
相同的情節。資料繪圖的有用風格是 linespoint
,顯然是“行+點”。例如:
plot "data_set.dat" using 1:4 with linespoint
# the abbreviated form is completely equivalent:
# p "data_set.dat" u 1:4 w lp
繪圖迭代的形式
如果你有更多的列並希望在同一個圖中繪製它們,只需將你喜歡的任何引數傳遞給 plot
函式,用 ,
分隔它們:
p "data_set.dat" u 1:2 w lp,\
"data_set.dat" u 1:3 w lp,\
"data_set.dat" u 1:4 w lp
無論如何有時可能會有太多的列逐個寫。在這些情況下,for
迭代迴圈非常有用:
p for [col = 2:4] "data_set.dat" using 1:col w lp
它給出了輸出
https://i.stack.imgur.com/KNhdU.jpg
簡言之,for
迭代在迴圈中增加變數,在本例中為 col
,具有確定的步驟(如果未指定= 1)。例如,for [i = 0:6:2]
將通過兩個步驟將 i
從 0 增加到 6:i = 0, 2, 4, 6
。所有值(開始,停止和增量)都被轉換為整數值。
* 網格
繪製資料集時,網格通常很有用。新增網格型別
set grid