GNUPLOT:如何在保持纵横比正确的同时设置纸张自动大小? 我使用C++来流GnUpTrand脚本。但我发现它在处理纵横比和纸张大小方面非常烦人。是否有人有一个好的方法来:

GNUPLOT:如何在保持纵横比正确的同时设置纸张自动大小? 我使用C++来流GnUpTrand脚本。但我发现它在处理纵横比和纸张大小方面非常烦人。是否有人有一个好的方法来:,c++,gnuplot,C++,Gnuplot,(1) 保持纵横比正确,图中长度1为1,2为2。我发现纵横比取决于纸张大小 (2) 零边距纸张,纸张大小将自动缩放。我发现每股收益的数字总是有很大的利润空间 set terminal postscript eps enhanced color font 'Helvetica,2000' size 640,480 set output 'grid.eps' set size 1, 1 set hidden3d unset key unset tics unset border set view 0

(1) 保持纵横比正确,图中长度1为1,2为2。我发现纵横比取决于纸张大小

(2) 零边距纸张,纸张大小将自动缩放。我发现每股收益的数字总是有很大的利润空间

set terminal postscript eps enhanced color font 'Helvetica,2000' size 640,480
set output 'grid.eps'
set size 1, 1
set hidden3d
unset key
unset tics
unset border
set view 0,0,1,1
set xrange [0:3]
set yrange [0:6]
set zrange [0:1]
set title 'grid test'
splot 'grid.dat' using 1:2:3 with lines lt 2 lc rgb '#100000'
grid.dat
文件:

0 0 0
1 0 0
2 0 0
3 0 0

0 2 0
1 2 0
2 2 0
3 2 0

0 4 0
1 4 0
2 4 0
3 4 0

0 6 0
1 6 0
2 6 0
3 6 0

通过说纵横比正确,我的意思是我希望绘图看起来像一个2:1的矩形网格,而不是正方形或其他任何东西。我不希望图形被拉伸。

如果我理解正确,您需要设置绘图的纵横比。要做到这一点,您需要使用以下内容:

set size ratio ASPECT_RATIO

这将使y轴的长度除以x轴的长度(以图形单位表示)为
纵横比
。如果您希望以绘图单位确定比率,那么您可以使用负数表示
纵横比

这里有一个技巧,假设我们有以下通用脚本:

set terminal postscript eps enhanced color font 'Helvetica,20' size Lx,Ly
set xrange [XMIN:XMAX]
set yrange [YMIN:YMAX]
首先,将XMIN和XMAX以及YMIN和YMAX设置为绘图的最小值和最大值

然后,设置
Lx
,假设让
Lx=100
,然后
Ly
应设置为
floor(100*(YMAX-YMIN)/(XMAX-XMIN))

在此之后,您可以使用一些shell脚本来删除边距