Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gnuplot 第二个非线性x2轴,取决于第一个值_Gnuplot_Axis - Fatal编程技术网

Gnuplot 第二个非线性x2轴,取决于第一个值

Gnuplot 第二个非线性x2轴,取决于第一个值,gnuplot,axis,Gnuplot,Axis,我画了一个典型x轴的图形,比如说从0到25 我想让x2轴具有x1值的sqrt,但我没有找到任何关于如何实现它的方法 使用这里的值,x2range将是[0:5] 但是抽搐不应该是线性的,这就是为什么我没能成功做到的原因 x2 tic 5与25匹配,x2 tic 4与16匹配,3与9匹配,以此类推 有什么帮助吗? 我希望有一个不太难的方法来做到这一点 干杯。这可以通过命令set link从gnuplot 5完成,该命令通过转换函数将次轴链接到相应的主轴: set xrange [0:25] set

我画了一个典型x轴的图形,比如说从0到25

我想让x2轴具有x1值的sqrt,但我没有找到任何关于如何实现它的方法

使用这里的值,x2range将是[0:5] 但是抽搐不应该是线性的,这就是为什么我没能成功做到的原因

x2 tic 5与25匹配,x2 tic 4与16匹配,3与9匹配,以此类推

有什么帮助吗? 我希望有一个不太难的方法来做到这一点


干杯。

这可以通过命令
set link
gnuplot 5完成,该命令通过转换函数将次轴链接到相应的主轴:

set xrange [0:25]
set link x2 via sqrt(x) inverse x**2
set x2tics
set xtics nomirror
plot x

上面给出的命令将生成警告,因为映射不是唯一的。但只要xrange的起始值大于或等于零,就可以忽略该警告

对于gnuplot 4.6,必须手动放置所有X2tic:

set xrange [0:25]
set x2range [0:25]
set xtics nomirror
# delete all automatic tics but the one at 0
set x2tics (0) 
# add all other tics
set for [i=1:5] x2tics add (sprintf('%d', i) i**2)
plot x

这正是我想做的,但是。。。如果我必须使用GNUPlot 4.6怎么办D