axes(‘Position’,[subNormalxLabel,subNormalyLabel,normalWidth,normalHeight])
参数说明:
subNormalxLabel 为子图左下角位置的归一化横坐标,subNormalxLabel为子图左下角位置的归一化纵坐标,计算公式为:
subNormalxLabel = (该位置的横坐标-横坐标起始值)/横坐标量程
subNormalyLabel = (该位置的纵坐标-纵坐标起始值)/纵坐标量程
normalWidth为子图的归一化宽度,normalHeight为子图的归一化高度,计算方式类似。
创建坐标轴对象,那么在一张图中创新两个或多个不同的坐标轴,可实现局部放大功能,且可自己控制子图长宽比。
clear;close;
%先画第一个大图像
set(groot,'defaultAxesColorOrder',[0 0 0;1 0 0],...'defaultAxesLineStyleOrder','--|-|:|-.');% groot refers to the graphics root object——help% 这里的设置对象(groot)不能是h1或h2,否则不起作用% 设置绘制点线的样式和他们的顺序,这里设置的顺序依次为:% 黑色虚线、红色虚线;黑色实线、红色实线;黑色点点、红色点点;黑色点线、红色点线
h1=axes('position',[0.08 0.1 0.85 0.85]); % 创建一个坐标系%让 坐标轴的左下角 与 窗口左侧 的距离时窗口宽度的8%,距离下侧10%%整个坐标轴的宽占85%,高占85%。一个小框就出来了
axes(h1); %将h1设置为当前坐标系,为绘图准备
Z = peaks; x = 1:length(Z);y = Z(3:10,:);
plot(x,y); axis(h1,[0,49,-6,0.5]); %坐标轴句柄h1不能少!%画图 %x的坐标范围是0到2π,y的范围是-0.5到0.5
legend('黑色虚线','红色虚线','黑色实线','红色实线','黑色点点','红色点点','黑色点线','红色点线')% 在原图上插入一个新的小图像
set(groot,'defaultAxesLineStyleOrder','remove','defaultAxesColorOrder','remove');%每次使用记得清除上次设置的参数,否则设置的参数会被保留下来
h2=axes('Position',[0.15 0.15 0.3 0.3]);% 建立的坐标轴把原来的覆盖了是吧?这说明建立坐标轴是在绘图(点、线)之前
axes(h2); % 将h2设置为当前坐标系
%plot(rand(10,3));
plot(x,y)
set(h2,'xlim',[10 15]);
出处:http://www.ngui.cc/zz/1822424.html