0

我怎样才能自动解决这两个图像的问题(使用适用于不同数据的代码)而不必为每个图固定轴范围(我有数百万个这些图)?

问题:轴范围应该更小

问题:轴范围应该更大

另外,我需要从第一个值到最后一个值正确标记轴(请参见评论中的示例)

非常感谢任何帮助。非常感谢你。

4

2 回答 2

3

要设置轴限制和更好地可视化图表,您可以使用轴命令,如 axis([xmin xmax ymin ymax]) 参数设置图表边界。它应该可以帮助你。更多信息在这里: http: //www.mathworks.se/help/matlab/ref/axis.html

于 2012-11-17T17:14:00.120 回答
0

为了有一个完整的边界框使用box on.

为了避免绘图周围出现大的空白空间(或根本没有空间),请使用xlimand ylim。尝试以下操作:

figure
plot(x,y)
box on

x1 = min(x);
x2 = max(x);
dx = x2-x1;
y1 = min(y);
y2 = max(y);
dy = y2-y1;

fc = 10/100  % this is a factor of 10% of empty space around plot


xlim([x1-dx*fc x2+dx*fc])
ylim([y1-dy*fc y2+dy*fc])

如果你想让一个刻度值出现在轴的开始和结束处,你可以通过 强制它set(gca,'Xtick',[values]),其中值是你想要显示的那些刻度;或通过上述 xlimfloorceilylim 最小和最大限制。

希望这是你需要的

于 2012-11-16T12:51:11.233 回答