- 积分
- 1437
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2017-7-19
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
在用matlab中subplot函数时,为什么会出现缺图的现象?
单独运行每一个图都可以,但是放在一起就不行,下面是我所用的subplot的代码,用了四个for循环,我试着把循环顺序颠倒,发现结果图上图片缺失的位置改变了,求哪位大神指点!
部分程序:(完整在附近)
figure;
for i=1:3
subplot(3,4,i,'position',[0.1, 0.7-(i-1)*0.3, 0.15, 0.3]);
m_proj('equidistant','lon',[110 135],'lat',[20 45]);%用m系列的函数去画图,否则不能用后面的函数
% m_contourf(Lon,Lat,spei_mean(:,:,4)',25,'linestyle','none');%contour是等值线,contourf是等值线填充图 25 级数?等值线
m_pcolor(Lon,Lat,spei_mean(:,:,i)');shading interp;
%m_grid('box','on','Linestyle','none');
m_grid('box','on','xtick',108:6:132,'fontsize',9,'ytick',18:6:42,'fontsize',9);
hold on;%保留上一张图的基础上在画图
% colorbar('southoutside');
colorbar;
caxis([29,36]);
colormap jet
hold on;
m_coast('linewidth',1,'color','k');%海岸线 linewidth 线的宽度 color 颜色 KRBYG黑红蓝黄绿
m_coast('patch',[0.783,0.741,0.721]);%patch 填充颜色?[RGB](红绿蓝三色模型)
end
hold on;
for i=4:6
subplot(3,4,i,'position',[0.3, 0.7-(i-4)*0.3, 0.15, 0.3]);
m_proj('equidistant','lon',[110 135],'lat',[20 45]);%用m系列的函数去画图,否则不能用后面的函数
% m_contourf(Lon,Lat,spei_mean(:,:,4)',25,'linestyle','none');%contour是等值线,contourf是等值线填充图 25 级数?等值线
m_pcolor(Lon,Lat,spei_mean(:,:,i)');shading interp;
%m_grid('box','on','Linestyle','none');
m_grid('box','on','xtick',108:6:132,'fontsize',9,'ytick',18:6:42,'fontsize',9);
hold on;%保留上一张图的基础上在画图
% colorbar('southoutside');
colorbar;
caxis([29,36]);
colormap jet
hold on;
m_coast('linewidth',1,'color','k');%海岸线 linewidth 线的宽度 color 颜色 KRBYG黑红蓝黄绿
m_coast('patch',[0.783,0.741,0.721]);%patch 填充颜色?[RGB](红绿蓝三色模型)
end
hold on;
for i=7:9
subplot(3,4,i,'position',[0.56, 0.7-(i-7)*0.3, 0.15, 0.3]);
%subplot(4,3,i);
m_proj('equidistant','lon',[110 135],'lat',[20 45]);%用m系列的函数去画图,否则不能用后面的函数
% m_contourf(Lon,Lat,spei_mean(:,:,4)',25,'linestyle','none');%contour是等值线,contourf是等值线填充图 25 级数?等值线
m_pcolor(Lon,Lat,spei_mean(:,:,i)');shading interp;
%m_grid('box','on','Linestyle','none');
m_grid('box','on','xtick',108:6:132,'fontsize',9,'ytick',18:6:42,'fontsize',9);
hold on;%保留上一张图的基础上在画图
% colorbar('southoutside');
colorbar;
caxis([29,36]);
colormap jet
hold on;
m_coast('linewidth',1,'color','k');%海岸线 linewidth 线的宽度 color 颜色 KRBYG黑红蓝黄绿
m_coast('patch',[0.783,0.741,0.721]);%patch 填充颜色?[RGB](红绿蓝三色模型)
end
hold on;
for i=10:12
subplot(3,4,i,'position',[0.8, 0.7-(i-10)*0.3, 0.15, 0.3]);
m_proj('equidistant','lon',[110 135],'lat',[20 45]);%用m系列的函数去画图,否则不能用后面的函数
% m_contourf(Lon,Lat,spei_mean(:,:,4)',25,'linestyle','none');%contour是等值线,contourf是等值线填充图 25 级数?等值线
m_pcolor(Lon,Lat,spei_mean(:,:,i)');shading interp;
%m_grid('box','on','Linestyle','none');
m_grid('box','on','xtick',108:6:132,'fontsize',9,'ytick',18:6:42,'fontsize',9);
hold on;%保留上一张图的基础上在画图
% colorbar('southoutside');
colorbar;
caxis([29,36]);
colormap jet
hold on;
m_coast('linewidth',1,'color','k');%海岸线 linewidth 线的宽度 color 颜色 KRBYG黑红蓝黄绿
m_coast('patch',[0.783,0.741,0.721]);%patch 填充颜色?[RGB](红绿蓝三色模型)
end
|
|