2012-11-15 63 views
12

之間的空間,我有兩個功能,如:gnuplot的 - 填寫兩個功能

f(x)=2**x 
g(x)=1024 

我如何使用的gnuplot爲從0 X這兩個功能積於10和填充它們之間的空間?

回答

12

不幸的是,gnuplot不提供這種功能的功能,只爲數據集。有兩種方法,現在要做到這一點,其中一個我建議:

f(x)=2**x 
g(x)=1024 
xmax=10 
set xrange [0:xmax] 
plot '+' using 1:(f($1)):(g($1)) with filledcurves closed 
+0

這是僞文件'+'的很好用法。很好的答案。 +1 – mgilson

+0

很好的答案,非常感謝! –

4

答案通過@ toxicate20表明不錯的使用爲僞文件+。對於這種特殊情況,這並不是必須的,因爲你的一個函數只是一個常量:

set xrange [0:10] 
plot 2**x w filledcurves y1=1024 
+0

在這種情況下,這個答案可能是對的,但g(x)= x? – windy

+0

@windy - 絕對正確。用這種方法你不能指定*任意*函數 - 只有常量。 (你可以用'with filledcurves xy = ...'來得到'g(x)= x''我不確定)另一個答案肯定是更一般的。對於您在問題中陳述的特定情況,這個更簡單。 – mgilson