使用gnuplot绘制与边缘链接的点

时间:2012-06-19 15:31:58

标签: gnuplot edge

我有一个使用gnuplot绘制的点(x,y)文件。如果我有另一个文件显示哪个点与边缘的哪个其他点相关联(例如(3.8,6)链接到(4,7)),是否可以在点之间可视化/绘制这些边缘?

2 个答案:

答案 0 :(得分:3)

取决于数据的组织方式,您可能需要查看绘图with vectors。 例如,如果您的数据文件如下所示:

#x1 y1 x2 y2
 1  1  3   3

您可以使用以下方式进行绘图:

set style arrow 1 nohead
plot "my_arrows.dat" using 1:2:($3-$1):($4-$2) with vectors arrowstyle 1

修改

假设您的数据文件中的所有点都重复,您可以执行以下操作:

set style arrow 1 nohead
plot "my_arrows.dat" using 1:2:($3-$1):($4-$2) with vectors arrowstyle 1,\
     "my_arrows.dat" using 1:2 w points

如果没有重复,你可以这样做:

set style arrow 1 nohead
plot "my_arrows.dat" using 1:2:($3-$1):($4-$2) with vectors arrowstyle 1,\
     "my_arrows.dat" using 1:2 w points ls 1 lc rgb "red" pt 1,\
     "my_arrows.dat" using 3:4 w points ls 1 lc rgb "red" pt 1

请注意,您可以使用线条样式(linecolorlcpointtypeptlinewidthlw等。使点看起来一样。)

答案 1 :(得分:2)

如果不使用单独的实用程序生成plotscript,您可能无法读取行位置,但是从点到点绘制直线的命令是

set arrow [X] from first x1,y1 to first x2,y2 nohead

其中X是箭头的可选标记号,(x1,y1)和(x2,y2)是图形坐标系中的点。