2011-10-26 51 views
2

我從我的程序生成值的配對t文件,並教授給了我們一個基本的gnuplot腳本從工作。但是,標題,輸出文件名和輸入數據文件都是硬編碼的腳本。編程方式修改的gnuplot腳本內部變量

有什麼辦法來修改打印文件中的變量?

例如,目前的標題是通過

set title "Voting"

完成,繪圖命令通過

plot 'data-confidence' using 14:3:9:12 notitle with errorbars, \ 
'data-confidence' using 14:3 notitle with points 2 

執行是否有可能像做

gnuplot pairedt.g voting voting.data和有該腳本在.data文件上執行?

回答

4

轉換的gnuplot的腳本轉換爲通過變量替換填充所需名稱的地獄腳本。一個很好的方法是使用here document

的最小例如:

#!/bin/sh 
    gnuplot << EOF 
    set terminal postscript eps 
    set output "$1.eps" 
    plot "$1.dat" 
EOF 

這使用的第一個參數的腳本以確定這兩個輸出文件名稱和該數據文件的名稱。

+0

我不知道你能做到這一點,原來我是怕我不得不編寫一個腳本生成的gnuplot腳本本身的字對字。儘管我沒有把這個用於項目,但這將在未來派上用場。 – Jason

+0

我認爲你的鏈接已損壞 –

0

這是一個小我不清楚你究竟是什麼之後,但我認爲有兩種可能的方式爲您解決這個「問題」:所以這是支持的方式

  1. 編輯gnuplot的腳本你的數據文件看起來。或者甚至更好,編寫自己的腳本來繪製數據。

  2. 編輯您的程序,以便

    • 輸出文件的名稱是data-confidence
    • 數據文件具有gnuplot的腳本需要的列(列與14:3:9:12引用生成輸出文件(見here的文檔))