用户定义的y轴gnuplot缩放(相当于设置对数缩放y)

用户定义的y轴gnuplot缩放(相当于设置对数缩放y),gnuplot,Gnuplot,我已经定义了一个用于缩放的函数f(),其方式与logscale类似(但f()不是对数函数)。有没有一种方法可以自动执行,比如设置fscale y 否则,我尝试绘制缩放函数: plot 'data' using 1:(f($2)) 但是y轴上的刻度显然是错误的。我可以用我的函数重新缩放y轴吗 我希望避免手动设置所有记号及其标签(因为我将对许多不同的绘图使用此脚本)。如果您的数据变化不大,您可以通过set ytics({“”}{}{,{“”}…)预加plot命令半自动插入TIC 只需使用适当数量的

我已经定义了一个用于缩放的函数
f()
,其方式与logscale类似(但
f()
不是对数函数)。有没有一种方法可以自动执行,比如
设置fscale y

否则,我尝试绘制缩放函数:

plot 'data' using 1:(f($2))
但是y轴上的刻度显然是错误的。我可以用我的函数重新缩放y轴吗


我希望避免手动设置所有记号及其标签(因为我将对许多不同的绘图使用此脚本)。

如果您的数据变化不大,您可以通过
set ytics({“”}{}{,{“”}…)预加plot命令半自动插入TIC

只需使用适当数量的点,这样绘图就会清晰

例如:

$ cat ex.data 
0 0
1 3
2 2.2
5 5
7 1.2
9 4
12 9
15 5
所以我们的y数据范围是0到9

 $ gnuplot

         G N U P L O T
         Version 4.4 patchlevel 3
         last modified March 2011
         System: Linux 3.2.0-24-generic

         Copyright (C) 1986-1993, 1998, 2004, 2007-2010
         Thomas Williams, Colin Kelley and many others

         gnuplot home:     http://www.gnuplot.info
         faq, bugs, etc:   type "help seeking-assistance"
         immediate help:   type "help"
         plot window:      hit 'h'

 Terminal type set to 'wxt'
 gnuplot> f(x) = x**2
 gnuplot> set yrange [0:f(10)]
 gnuplot> set ytics ("0" f(0), "5" f(5), "7.5" f(7.5), "10" f(10))
 gnuplot> plot "ex.data" u 1:(f($2)) w l
结果是:


是的,我在手册中也找到了这个命令。不幸的是,在我的例子中,范围确实相差很大:(