2017-08-13 55 views
0

我有以下數據文件:在gnuplot的,我怎麼能畫出兩列的總和,當我用頭名稱繪製

denst densu densd denss 
3  1  1  1 
4  1  1.5 1.5 
5  1  2.5 1.5 

我可以積,比方說,densudenst)爲:

plot 'file.txt' u 'denst':'densu'

這是非常方便的語法。但是,如果我想繪製,說的densudensd總和,相對於denst我能做到這一點的唯一方法是:

set key autotitle columnhead告訴GNUPLOT第一行頭,而不是數據

plot 'file.txt' u 1:($2+$3)以陰謀

問題是我該如何做像這樣的列值操作,但使用名稱符號?實際的文件是大約40列的csv,手動計算哪個列是哪個編號非常繁瑣,因此我可以使用$n語法對列數據進行數學運算。

我想要做類似plot 'file.txt' u 1:($'densu'+$'densd')的事情,使用標題名稱語法類似於我如何使用列號語法來完成。有沒有辦法做到這一點?

回答

3

我發現了一種方法來做到這一點。這兩個命令是等價的:

plot 'file.txt' u 1:($2+$3) 
plot 'file.txt' u 1:(column(2)+column(3)) 

你不能這樣做

plot 'file.txt' u 'denst':($'densu'+$'densd') 

但你可以做

plot 'file.txt' u 'denst':(column('densu')+column('densd')) 

達到同樣的效果。