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日

悬赏问题

  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?
  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
  • ¥15 路易威登官网 里边的参数逆向
  • ¥15 Arduino无法同时连接多个hx711模块,如何解决?
  • ¥50 需求一个up主付费课程