Gnuplot 在使用时仅使用正平方根值sqrt(x)
。有没有办法在同一个函数中绘制正值和负值。
我知道一种技巧,它可以使用f(x) = sqrt(x)
并将g(x) = -sqrt(x)
它们绘制在一起,然后调整两个函数以使用相同的线条颜色,但有更好的方法吗?
Gnuplot 在使用时仅使用正平方根值sqrt(x)
。有没有办法在同一个函数中绘制正值和负值。
我知道一种技巧,它可以使用f(x) = sqrt(x)
并将g(x) = -sqrt(x)
它们绘制在一起,然后调整两个函数以使用相同的线条颜色,但有更好的方法吗?
您可以绘制参数化曲线:
set parametric
set trange [-10:10]
set samples 1000
plot abs(t), (t > 0 ? 1: -1) * sqrt(abs(t))
为达到这个:
如果您使用参数表示(如 Christoph 的回答),您还可以使用 的反函数sqrt(t)
,t**2
例如
set parametric
set trange [-10:10]
set samples 1000
plot t**2,t
在数学上,函数是一个数学对象,对于函数域内的每个 x,都有一个且只有一个对应的 f(x) 值。Gnuplot 处理数学“函数”。所以它不是“黑客”,也不是 gnuplot 的“问题”。