之前写论文的时候,出图用到了局部放大图,当时网上搜到了一个比较好用的函数:magnify.m文件。源自MathWorks社区,下载解压,画完图后载入该文件即可。
1、鼠标停放在想放大的区域,按住右键,此时鼠标点击处出现类似放大镜的方框,可以移动选择要放大的区域,通过'<'和'>'缩小或扩大方框范围,通过'-'和'+'键减小或增加局部缩放比例,调整到自己想到的区域和缩放大小,松开右键即可。重复上述可放大多个,将Figure调整到可选中状态,可移动局部放大图的放置位置。
这个方法用了挺久,也很好用,但是长宽比是不能改的,于是又找到了另外一种方法,即使用matlab自带函数:
axes('Position',[subNormalxLabel,subNormalyLabel,normalWidth,normalHeight])
参数说明:
subNormalxLabel 为子图左下角位置的归一化横坐标,subNormalxLabel为子图左下角位置的归一化纵坐标,计算公式为:
subNormalxLabel = (该位置的横坐标-横坐标起始值)/横坐标量程
subNormalyLabel = (该位置的纵坐标-纵坐标起始值)/纵坐标量程
normalWidth为子图的归一化宽度,normalHeight为子图的归一化高度,计算方式类似。
创建坐标轴对象,那么在一张图中创新两个或多个不同的坐标轴,可实现局部放大功能,且可自己控制子图长宽比。<

本文介绍了在Matlab中创建局部放大图的两种方法。一种是利用社区分享的magnify.m函数,通过鼠标操作选择放大区域和调整缩放比例。另一种是利用Matlab内置函数,通过设置子图的归一化坐标来精确控制放大区域和长宽比,实现自定义的局部放大效果。
最低0.47元/天 解锁文章
976

被折叠的 条评论
为什么被折叠?



