matlab画三维图像例题_matlab画三维曲面

matlab画三维图像例题_matlab画三维曲面我可能真的太闲了吧···在网上看到这图觉得挺好看:t=0:pi/360:2*pi;x=sin(t);y=cos(t);z=2*x.^2+y.^2;figureplot3(x,y,z,’Color’,’r’,’LineWidth’,2);xlabel(‘x’);ylabel(‘y’);zlabel(‘z’);title(‘z=(cost)^2+2*(sint)^2’);ax…


Jetbrains全系列IDE稳定放心使用

二维函数的图像必须用三维坐标系画,很多函数的图像长得很好看,很有意思。会可视化也会有利于我们理解更深刻。

(1)plot3,三维曲线图

在网上看到这图觉得挺好看:

t=0:pi/360:2*pi;
x=sin(t);
y=cos(t);
z=2*x.^2+y.^2;
figure
plot3(x,y,z,'Color','r','LineWidth',2);
xlabel('x');
ylabel('y');
zlabel('z');
title('z=(cos t)^2+2*(sin t)^2');
axis([-1.2 1.2 -1.2 1.2 1 2.2]);

在这里插入图片描述

(2)mesh,网面图

clear all,clc;
t=-0.5:.01:0.5;
[x,y]=meshgrid(t);%形成格点矩阵
z=sin(4*pi*x)+cos(6*pi*y);
figure(1)
mesh(x,y,z);
axis([-0.5 0.5 -0.5 0.5 -2 2]);
title('z=sin(4*pi*x)+cos(6*pi*y); mesh')
colormap cool%cool是一种配色方案,还有其他方案如winter,summer····见help colormap
colorbar

在这里插入图片描述

画个二元函数,观察采样后频谱的混叠现象

在这里插入图片描述

二元函数图像的绘制还是把变量分为多个离散点绘制,只是增大点数。

clear all,clc;
t=-1:.01:1;
[x,y]=meshgrid(t);%形成格点矩阵
f=cos(2*pi*(2*x-y));
figure(1)
mesh(x,y,f);grid on
xlabel('x');
ylabel('y');
zlabel('f');
axis([-0.5 0.5 -1 1 -1.5 1.5]);
title('f=cos[2*pi(2x-y)]; mesh')
colormap winter
colorbar

在这里插入图片描述
先手动计算一下它的二位傅里叶变换:
不想打公式(逃)

在这里插入图片描述


F= fft2(f);%做二维DFT变换,把连续函数取样得到一个矩阵,把这个矩阵当图像一样处理
figure(2)
subplot(121),imshow(abs(F),[]);title('函数f=cos(2*pi(2x-y))二维频谱')
F=fftshift(F);%使用matlab的fftshift函数把低频分量移到频谱中心
subplot(122),imshow(abs(F),[]);title('中心化频谱')

在这里插入图片描述

t=-1.1:.333:1.1;%以频率3采样(题目要求)
[x,y]=meshgrid(t);%形成格点矩阵
f=cos(2*pi*(2*x-y));
figure(1)
mesh(x,y,f);grid on
xlabel('x');
ylabel('y');
zlabel('f');
axis([-1 1 -1 1 -1.5 1.5]);
title('采样后的f=cos[2*pi(2x-y)]; mesh')
colormap winter
colorbar

F= fft2(f);%做二维DFT变换,把连续函数取样得到一个矩阵,把这个矩阵当图像一样处理
figure(2)
subplot(121),imshow(abs(F),[]);title('函数f=cos(2*pi(2x-y))采样后的二维频谱')
F=fftshift(F);%使用matlab的fftshift函数把低频分量移到频谱中心
subplot(122),imshow(abs(F),[]);title('中心化频谱')

采样后信号:
在这里插入图片描述
采样后信号频谱:
函数的x方向频率是2,y方向频率是1,所以一定会有混叠失真
可以看出频谱的能量中心的相对位置都不对,这就是混叠失真引起的

在这里插入图片描述

t=-1.1:.17:1.1;%以更高频率采样
[x,y]=meshgrid(t);%形成格点矩阵
f=cos(2*pi*(2*x-y));
figure(1)
mesh(x,y,f);grid on
xlabel('x');
ylabel('y');
zlabel('f');
axis([-1 1 -1 1 -1.5 1.5]);
title('采样后的f=cos[2*pi(2x-y)]; mesh')
colormap winter
colorbar

F= fft2(f);%做二维DFT变换,把连续函数取样得到一个矩阵,把这个矩阵当图像一样处理
figure(2)
subplot(121),imshow(abs(F),[]);title('函数f=cos(2*pi(2x-y))采样后的二维频谱')
F=fftshift(F);%使用matlab的fftshift函数把低频分量移到频谱中心
subplot(122),imshow(abs(F),[]);title('中心化频谱')

以更大的采样频率采样,避免不满足奈奎斯特定理产生混叠:
可见得到的频谱和连续函数的频谱更相似。采样频率越大,得到的频谱和连续函数的频谱越相似
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/183032.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 黑盒测试用例设计方法一(等价类划分、边界值分析)

    黑盒测试用例设计方法一(等价类划分、边界值分析)文章目录黑盒测试用例设计方法黑盒测试用例设计方法概述等价类划分法边界值分析法黑盒测试用例设计方法黑盒测试用例设计方法概述测试数据选择等价类划分法边界值分析法测试步骤设计因果图法判定表法正交实验法功能图法场景法等价类划分法等价类划分法原理把程序的输入域划分成若干份,然后从每个部分中选取少数代表性数据作为测试用例每一类的代表性数据在测试中的作用等价于这一类中的其他值,如果某一类中的一个例子发现了错误,这一等价类中的其他例子也能发现同样的错误。反之,如果某一类中的一个例子没有

    2022年6月3日
  • ZBrush中必须记住的常用快捷键

    ZBrush中必须记住的常用快捷键ZBrush是一款数字雕刻和绘画软件,它以强大的功能和直观的工作流程彻底改变了整个三维雕刻行业。强大的功能离不开便捷的操作,为此ZBrush提供了一系列常用操作快捷键,熟练掌握这些快捷键

    2022年8月2日
  • DP和HDMI区别「建议收藏」

    转自:https://www.toutiao.com/i6877677362054595080在目前市面上显示器接口中,VGA和DVI已经逐渐退出了历史舞台,Type-C还算是小众,而DP(DisplayPort)与HDMI则成为了主流产品的标配,目前的主流级显卡也是以这两个输出接口为主,而新的问题也随之诞生了:当这两个接口都可以使用的时候,选择哪个会更好?对于大部分普通的消费者来说,显示器能跟主机正常连接就行,随便哪个接口都无所谓,反正能正常使用,但是对于DIY玩家来说,这个问题就显得非常重要

    2022年4月16日
  • RFC2616-HTTP1.1-Header Field Definitions(头字段规定部分—译文)「建议收藏」

    partof HypertextTransferProtocol–HTTP/1.1RFC2616Fielding,etal.14头字段规定该章节定义了HTTP1.

    2022年3月25日
  • 5.ScrollView无法填充满屏幕

    5.ScrollView无法填充满屏幕

    2021年11月15日
  • htaccess文件中RewriteRule 规则参数介绍

    htaccess文件中RewriteRule 规则参数介绍.htaccess文件<IfModulemod_rewrite.c>RewriteEngineonRewriteCond%{REQUEST_FILENAME}!-dRewriteCond%{REQUEST_FILENAME}!-fRewriteRule^(.*)$index.php/$1[QSA,PT,L]</IfModule&gt…

    2022年7月15日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号