matlab实验二可视化

学聪明点,自己改,别把我卖了

一、实验目的及要求
要求
1、掌握 MATLAB常用的二维和三维绘图函数
2、掌握MATLAB的图形注释
3、熟悉MATLAB常用的图形修饰
4、熟悉MATLAB的图形动画

实验原理
1、MATLAB二维绘图:plot,fplot,fimplicit;
2、MATLAB三维绘图:meshgrid,mesh,surf,fmesh,fsurf,fimplicit3;
3、MATLAB图形注释:xlabel,ylabel,zlabel,title,legend,text,annotation;
4、MATLAB动画:animatedline,addpoints,drawnow;

二、实验设备及要求
PC机100台及MATLAB软件

三、实验内容与步骤
1)利用MATLAB的帮助系统分别查询plot、meshgrid、mesh、surf、plot3、fplot的绘图函数的功能和用法,根据自己的理解简单概述各函数功能。
(2)函数定义为:, 在同一幅图中绘制,,要求:
① 给出X和两条Y轴标签、图例,图形标题为“学生名字+实验二第二题”;
② 线条颜色红色,线型为实线,线宽为1.5, 线条颜色蓝色,线型为虚线,线宽为2, 线条颜色品红色,线型为点划线,线宽为2;
③ 点标记形状为圆圈,点标记大小为8,标记填充颜色和边缘颜色均为红色,间隔5个点显示一个标记,点标记大小为10,点标记形状为六角星,标记填充颜色和边缘颜色均为蓝色,间隔5个点显示一个标记,点标记形状为五角星,点标记大小为10,标记填充颜色和边缘颜色均为品红色,间隔5个点显示一个标记;
④ 每条曲线都能清晰的显示(用双Y轴的形式,hx、fx共用一个Y轴,gx用一个Y轴)
实验效果图:

(3)绘制函数: 的三种三维图,。
注:可以用plot3、mesh、surf函数绘制,要求在一个图形窗口中分子图绘制,子图标题为“学生姓名+实验二第二题+plot3”、“学生姓名+实验二第二题+mesh”、“学生姓名+实验二第二题+surf”。
实验效果图:

四、实验结果与数据处理
一、利用MATLAB的帮助系统分别查询plot、meshgrid、mesh、surf、plot3、fplot的绘图函数的功能和用法,根据自己的理解简单概述各函数功能。
Plot:plt.plot()函数是matplotlib.pyplot模块下的一个函数, 用于画图
它可以绘制点和线, 并且对其样式进行控制。
Meshgrid:用来生成网格矩阵,只能生成二维三维网格矩阵。对于生成二维网格,用法为:[X Y]=meshgrid(x y); % x 和y是一维数组,如x=[1 2 3]; y= [2 3 4 ]; 则生成的 X 和 Y都是二维的矩阵,X 的每行都是 1 2 3,共三行,Y 每列都是2 3 4,共三列。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

1、
plot在这里插入图片描述
meshgrid
在这里插入图片描述
mesh
在这里插入图片描述
surf
在这里插入图片描述
plot3
在这里插入图片描述
fplot
在这里插入图片描述
2、
实验代码:

figure;
f1 = @(x) ((sqrt(x) + sin(x)).*(x>=0) + (2.*sin(x) + cos(x)).*(x<0));
h1 = @(x) cos(x) - sin(x);
g1 = @(x) exp(x) - x;
domain = [-3*pi 3*pi]; 
yyaxis left
fplot(f1, domain, '-or', 'MarkerSize', 8, 'MarkerFaceColor', 'r', 'LineWidth', 1.5,'DisplayName', 'f');
hold on
fplot(h1, domain, '--hb','MarkerSize', 10, 'MarkerFaceColor', 'b', 'LineWidth', 2, 'DisplayName', 'h');
hold off
ylim([-3 3]); 
ylabel('f(x), h(x)'); 

yyaxis right % 双 y 轴右侧
fplot(g1, domain, '-.pm', 'MarkerSize', 10, 'MarkerFaceColor', 'm','LineWidth', 1.5, 'DisplayName', 'g');
hold on
hold off 
ylim([0 550]);
ylabel('g(x)');

xlabel('x') % x 轴标签
title(' 成佳美 实验二第二题') % 图标题
legend('fx','hx','gx');
grid on 
clearvars 

在这里插入图片描述

三、
实验结果:

实验代码:

[x,y] = meshgrid(-10:0.5:10); 
tem=sqrt(x.^2+y.^2)
z=sin(tem)./(tem)

xlim([-8 inf]) 
ylim([-inf 8])

subplot(1,2,1)
mesh(x,y,z)
xlabel('x轴'); ylabel('y轴'); zlabel('z轴'); 
axis vis3d 
title('成佳美 实验二第三题 mesh')

在这里插入图片描述

实验代码:[x,y] = meshgrid(-10:0.5:10); % 快速生成网格所需的数据
tem=sqrt(x.2+y.2)
z=sin(tem)./(tem)

xlim([-8 inf])
ylim([-inf 8])
subplot(1,2,2)
surf(x,y,z) % (X(j), Y(i), Z(i,j))是线框网格线的交点
xlabel(‘x轴’); ylabel(‘y轴’); zlabel(‘z轴’);
axis vis3d % 冻结屏幕高宽比,使得一个三维对象的旋转不会改变坐标轴的刻度显示
title(‘成佳美 实验二第三题 surf’)
在这里插入图片描述

实验代码:
[x,y] = meshgrid(-10:0.5:10)

tem=sqrt(x.2+y.2)
z=sin(tem)./(tem)
xlim([-8 inf])
ylim([-inf 8])
mesh(x,y,z)

title(‘成佳美 实验二第二题 mesh’)
在这里插入图片描述

五、实验分析与总结

猜你喜欢

转载自blog.csdn.net/weixin_57780589/article/details/130558009