我制作了一个gnu脚本来绘制图形
我的剧本
set size square
plot "./points.dat" using 1:2 pt 7 ps 1
replot "./circle.dat" using 1:2:3 with circles
points.dat
1.000000 -1.000000
-1.000000 1.000000
-1.000000 -1.000000
1.000000 1.000000
circle.dat
0.000000 0.000000 1.414214
根据数据点,所有点必须在圆圈中,但图表显示圆圈外的点
有人可以帮帮我吗。
答案 0 :(得分:4)
问题
set size square
。这会导致x-axis
的长度和y-axis
的长度在“画布”上与相同。我的意思是,如果你要在一张纸上打印你的情节并用尺子测量x轴和y轴,你会得到相同的长度。现在,如果我们查看圆形对象(help circle
)的文档,我们会看到:
水平和垂直缩放之间的任何差异都将得到纠正,以便结果始终为圆形。
当gnuplot自动缩放图形时,由于某种原因它不会自动缩放x和y相同(可能是由于终端的宽高比)。
解决方案
Gnuplot set size
有一种方法可以确保x-axis
上的1个单位距离与y-axis
上的1个距离单位相同。关键是使用:
set size ratio -1
而不是set size
平方。另一种解决方案是继续使用set size square
但是明确地将xrange
和yrange
设置为相同的内容:
set xrange [-1.25:1.25]
set yrange [-1.25:1.25]
set size square
plot "./points.dat" using 1:2 pt 7 ps 1
replot "./circle.dat" using 1:2:3 with circles