2011-08-03 71 views
0

有沒有什麼方法可以在gnuplot中僅通過數據文件中的數據部分執行自動縮放? 閱讀幫助,我發現,它可以使用yrange的「writeback」選項,繪製部分數據,然後恢復yrange和replot。但是,此代碼不工作:由部分數據集自動縮放

set yrange [*:*] writeback 
f = "datafile.csv" 
plot f u 1:2 
set yrange restore 
replot f u 1:3 

它繪出僅第一圖表(使用數據1:2):由重製3數據,並且不繪製1。

+0

我不明白你在做什麼。我認爲你的劇本應該完成我想要的東西。你能否包含你的'datafile.csv'並且再次評論你認爲是錯誤的以及它應該如何看待? – Woltan

回答

0

你也許在尋找這樣的事情:

plot f u 1:($2*0.1), f u 1:($3*2) 

或者什麼你指的是與汽車的規模?

+0

我在文件中有兩列。假設第一列的值在[90..100]範圍內,第二列的值在[0..100]範圍內。我希望gnuplot在第一列設置yrange(本例中爲90..100),並在這個範圍內繪製兩個圖。如果我將自動縮放gnuplot的選擇範圍設置爲[0..100] – Nikolay

+0

@Nick嘗試爲x軸設置xrange [90:100],爲y軸設置yrange [90:100]。 – Woltan

+0

但這並不能解決問題。我不知道範圍之前的繪圖。我需要通過文件中的值來確定它 – Nikolay

1

上述命令不顯示終端/輸出設置。我聽說the PNG terminal has issues,所以重置它可能很有用,並且在範圍恢復後定義終端和輸出。例如:

set terminal 'unknown' 
set yrange [] writeback 
f = "datafile.csv" 
plot f u 1:2 
set yrange restore 
set terminal 'png' 
replot f u 1:3