Setting the compression ratio to unity is important
for some graphs. (Definition: compression ratio =
aspect ratio of viewing window/aspect ratio of viewport).
In gnuplot you do this by simply setting
set size ratio vwar
where vwar is the aspect ratio of the viewing window,
as determined by previous xrange and yrange commands.
I believe the following is the procedure in
i. set the figsize
ii. use the axes command to set the propert viewport aspect
ratio, which requires careful attention to figsize (and of
course knowledge of the limits to be set with the axis
iii. plot your graph
iv. use the axis command to set the aspect ratio of the
My description is a bit verbose, but it may nevertheless
highlight some nice things about gnuplot's size command.
(Or I may have missed the obvious way to do this.)
This doesn't matter much in scripts, but for interactive
use (e.g., classroom demonstration) it is nice to keep
things as simple and straightforward as possible.
So this is almost a feature request.
The only problem is that gnuplot's size command does
not seem obviously suited to the matplotlib.matlab model,
and I'm not sure what a good version would be.
I think it would be something like "get the current axis,
keep the "long" axis (as implied by the ratio) full length,
and "shrink" the shorter axis as necessary to achieve the
right ratio. This would respect the existing margins to
everywhere except by the shrinking axis. However it would
probably be better to adjust the figure size as well, to
keep the margins unchanged.