gnuplot不使用“时的奇怪行为”;“第一”;选项

gnuplot不使用“时的奇怪行为”;“第一”;选项,plot,gnuplot,gnu,Plot,Gnuplot,Gnu,我在画水平线时遇到了麻烦 ... set arrow 2 from graph 0, y(x) to x, y(x) nohead ... 为清楚起见,假设就我所知,x=1=>y=3,它应该生成一行从(0,3)到(1,3)。然而,第一个点(0,3)的y坐标显示在绘图之外的某个地方。但如果我使用(根据) 然后它产生我想要的输出 有人能先用向我解释一下上面的魔法吗?阅读帮助坐标了解不同的坐标系是值得的。简而言之,第一个坐标系是由x轴和y轴的当前范围定义的:图形的左下角有坐标(xmin,ymin),

我在画水平线时遇到了麻烦

...
set arrow 2 from graph 0, y(x) to x, y(x) nohead
...
为清楚起见,假设就我所知,
x=1=>y=3
,它应该生成一行从
(0,3)
(1,3)
。然而,第一个点
(0,3)
y
坐标显示在绘图之外的某个地方。但如果我使用(根据)

然后它产生我想要的输出


有人能先用
向我解释一下上面的魔法吗?

阅读
帮助坐标
了解不同的坐标系是值得的。简而言之,
第一个
坐标系是由x轴和y轴的当前范围定义的:图形的左下角有坐标(xmin,ymin),右上角有坐标(xmax,ymax)。在
图形
坐标系中,左下角始终为(0,0),右上角始终为(1,1),与两个轴的范围无关

下面是一个简单的例子:

set xrange [-4:4]
set yrange [-3:3]
set grid
set arrow 1 from first 0,0 to first 1,1 ls 1 lw 3
set arrow 2 from graph 0,0 to graph 1,1 ls 2 lw 3
plot 1/0 ti ""

紫色向量是箭头1,在
第一坐标系中从(0,0)到(1,1)。第二个向量是箭头2,它在
图形
坐标系中从(0,0)到(1,1)

将使用坐标系的默认规则为

如果未指定x的坐标系,则首先使用
first
。如果 未指定y的系统,采用x的系统

对于
设置箭头的特殊情况

坐标系说明符不会从第一个端点描述延续到第二个端点描述

听起来您想先使用
坐标系
,因此不必执行任何操作:

set arrow from 0, y(x) to x, y(x)
当你使用

set arrow from graph 0, y(x) to x, y(x)
set arrow from graph 0, first y(x) to x, y(x)
您使用
图形
坐标系作为起点,使用
第一个
坐标系作为终点

当你使用

set arrow from graph 0, y(x) to x, y(x)
set arrow from graph 0, first y(x) to x, y(x)

使用
图形
坐标系作为起点的x坐标,使用
第一个
坐标系作为剩余坐标。如果x轴的范围从零开始,这将与使用
第一个
坐标系处理所有问题相同。

我称之为完整答案,我一定会记住它。