在gnuplot中绘制从给定点到文件中所有点的线

在gnuplot中绘制从给定点到文件中所有点的线,gnuplot,Gnuplot,我想使用gnuplot从原点(0,0)到文件中给定坐标的所有点绘制直线。例如,如果文件包含以下数据: 1,1 1,2 然后我想要一条从(0,0)到(1,1)和(0,0)到(1,2)的直线。因为我有很多点,我不能为文件中的每个点手动执行。如何实现这一点?一种可能的方法是在块索引上使用绘图进行循环。如果在文件中的坐标之间插入两条白线,它们将被视为不同的块,以便可以写入 plot for [j=0:N] 'data.dat' index j u 1:2 with lines 其中N是点数。但是,通

我想使用
gnuplot
从原点
(0,0)
到文件中给定坐标的所有点绘制直线。例如,如果文件包含以下数据:

1,1
1,2

然后我想要一条从
(0,0)到(1,1)
(0,0)到(1,2)
的直线。因为我有很多点,我不能为文件中的每个点手动执行。如何实现这一点?

一种可能的方法是在块索引上使用
绘图进行
循环。如果在文件中的坐标之间插入两条白线,它们将被视为不同的块,以便可以写入

plot for [j=0:N] 'data.dat' index j u 1:2 with lines
其中N是点数。但是,通过这种方式,您需要在每个块(即表单)的文件中添加原点

#your data file
0 0
1 1


0 0
1 2

我不知道你有多少分,或者你是否必须在很多文件上执行此操作。有几点您可以手动修改文件,否则我建议您准备一个脚本(在
bash
中,例如使用
sed
或其他…。

一个简单的方法是使用向量进行打印,但将所有点的原点设置为
(0,0)
,然后移除向量头:

plot "datafile" using (0):(0):1:2 with vectors
其结果是:

更多信息。顺便说一下,如果您的输入文件与您发布的文件完全相同:

1,1
1,2
在打印之前,您需要添加
设置数据文件分隔符','
。希望有帮助