2013-10-15 29 views
1

我有形式的文件在gnuplot的Splot多行從相同的數據文件

# Line 1 
# x y z 
    x11 y11 z11 
    x12 y12 z12 
    .... 
    x1n y1n z1n 
    (blank row) 

..... 


# Line N 
# x y z 
    xN1 y11 z11 
    xN2 y12 z12 
    .... 
    xNk yNk zNk 

如果我嘗試splot這樣的文件,gnuplot的意圖它作爲一個表面,並且該結果是非常可怕(因爲一條線的端點接近下一條線的端點,而不是第一個點)。我如何將它們繪製爲不同的行(因爲每行都在不同的文件中)?

回答

1

座標的每個連續部分稱爲block。兩個block由一個空行分隔。 (注意,兩個空白行分隔兩個數據集,可以使用index訪問)。

您可以選擇某一行使用every選項繪圖:

block = 4 
splot 'file.dat' every :::block::block 

這將選擇第五block(編號開始於0)。

遍歷所有可用的模塊,你可以估算塊數與stats命令:

stats 'file.dat' 
splot for [i=0:int(STATS_blank)] 'file.dat' 

注意,一些空白的文件的末尾,這不獨立的模塊,也計數,但這對迭代沒有問題。

您當然也可以使用迭代變量i來選擇某個linetypelinestyle

相關問題