matlab同一张图中建立多个坐标系

在一个坐标系中画多条曲线,可以用

plot(x1,y1)
hold on
plot(y2)
hold off

在一个画布中快速建多个坐标系

subplot(211)
plot(sin(1:100))
subplot(212)
plot(cos(1:100))

上诉方法是matlab自建的多个坐标系矩阵,规则布局,坐标系之间留有大量空白,有时候我们想在一张图中建多个坐标系

又想灵活防止坐标系的位置,并且充分利用画布中的布局,可以好用axes函数

h1=axes('position',[0.1,0.2,0.3,0.4])
plot(sin(1:100))
h2=axes('position',[0.3,0.4,0.5,0.5])
plot(cos(1:100))

axes创建坐标系,用position参数指定在画布中的位置,返回画布句柄

axes函数有两个功能,当没有指定句柄值时,创建一个新的画布,并按照指定参数创建坐标系

如果指定坐标系句柄,即指定接下来的操作在哪一个坐标系中进行,并把该坐标系放在最顶层,如果坐标系有重叠,他会遮挡其他坐标系的图

 

position参数是一个4元向量,取值范围为[0,1],

第一个值指定坐标系的水平坐标轴从画布的什么位置开始,

第二个值指定坐标系的纵向坐标轴从画布的什么位置开始

第三个值指定坐标系的宽度占画布的比值,

第四个值指定坐标系的高度占画布的比值

 

 

你可能感兴趣的:(matlab)