Georgie_Robot 2021-10-19 16:15 采纳率: 100%
浏览 46
已结题

Matlab如何保留二维figure内特定圆域内图样 而其他为空白

背景&目的:这里有一个40*40的矩阵a要画图pcolor,我想只保留正方形内接圆中的部分,其余四角为空白。
失败1:我试过用
a((i-20.5)^2+(j-20.5)^2>=20.5^2)=nan
这种方式,但是最后结果(图1)是圆周很粗糙。

img

但是又处于其他考虑,不想把矩阵插值成更大的(例如100100)
失败2:有人提出过这种思路:自己构造一个高精度(例如1000
1000)的“白板”叠加在上面,但结果是原来的4040只在10001000的角落看不见
——如何直接保留figure中圆域内的图像 而且边缘光滑呢?

  • 写回答

1条回答 默认 最新

  • joel_1993 2021-10-19 19:12
    关注

    你好,建议用插值:

    [x, y] = meshgrid(linspace(-2,2,40));%可以换成你的x和y
    a = sin(x).*cos(y);%可以换成你的a
    theta = linspace(0,2*pi,41);
    r = 0:0.1:2;
    [T, R] = meshgrid(theta, r);
    x1 = R.*cos(T); y1=R.*sin(T);
    a1 = interp2(x,y,a,x1,y1);%
    contourf(x1, y1, a1);
    axis('equal'); colormap(jet(30));colorbar
    

    例子效果:

    img

    如有帮助,还望题主给个采纳支持一下答主冲榜哟,谢谢啦

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月28日
  • 已采纳回答 10月20日
  • 创建了问题 10月19日

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度