在 Matlab 图中自动设置限制

计算科学 matlab
2021-12-20 21:55:37

如何自动将轴的限制设置为比图中包含的所有数据大 5%?当然,我可以计算我绘制的所有内容的总最大值/最小值,但我必须分别为每个绘图执行此操作。由于 Matlab 必须以某种方式知道所有最小/最大值(它自己计算出一个不错的限制),我想这样做一定更容易。

1个回答

像下面这样的东西应该做你想做的事:

p=0.05;
axis tight
a=axis();
new_limits=[a(1)-p*(a(2)-a(1)) a(2)+p*(a(2)-a(1)) a(3)-p*(a(4)-a(3)) a(4)+p*(a(4)-a(3))];
axis(new_limits);

进一步的改进是将其变成一个接受任何图形句柄并允许不同扩展的函数xy,但那些应该是直截了当的。