matlab绘图实验作业
程序员文章站
2022-07-12 15:30:53
...
问题
2
%%
clc; clear;
% 2. 使用plot,fplot(绘制表达式或函数)
x = linspace(-1,1, 100);
y = cos(tan(x*pi));
plot(x, y);
%%
fplot(@(x)cos(tan(x*pi)), [-1 1]);
3
%%
% 3. 使用ezplot 绘制
clc; clear;
ezplot('exp(x.*y)-sin(x.*y)', [-3 3])
4
%%
% 4 ezplot绘制摆型
clc;clear;
ezplot('3*(x - sin(x))', '3*(1-cos(x))', [0, 2*pi]);
5
%%
% 5 5.用surf ,mesh绘制曲面z = 2x2 + y.
x = -5:0.5:5;
y = -5:0.5:5;
[X, Y] = meshgrid(x, y);
Z = 2*X.^2 + Y.^2;
% 使用surf
subplot(1, 2, 1);
surf(X, Y, Z);
title('使用surf')
% 使用mesh
subplot(1, 2, 2);
meshc(X, Y, Z);
title('使用mesh');
6
%%
% 6 使用ploar绘制阿基米德螺线
theta = 0:0.1:6*pi;
a = 6;
r = a*theta;
subplot(1, 2, 1);
polar(theta, r);
title('阿基米德螺线');
subplot(1, 2, 2);
r2 = a*cos(3.*theta);
polar(r2);
title('三页玫瑰线');
7
%%
% 7.同一个平面中画心形和马鞍型
% 心形线
subplot(1, 2, 1);
a = ezplot('17*x^2-16*abs(x)*y+17*y^2-225');
% 标注
gtext('心形线')
axis([-10 10 -6 6]);
% 格栅化
grid on;
set(a, 'color', 'r', 'LineWidth', 5);
% 标注
xlabel('x');ylabel('y');title('心形线');
% 马鞍面 (双曲抛物面)
subplot(1, 2, 2);
[X, Y] = meshgrid(-7:0.1:7);;
Z = X.^2./8-Y.^2./6;
meshc(X, Y, Z);
grid on;
view(30, 30); % 正数逆时针旋转
% 标注
xlabel('x'); ylabel('y'); zlabel('z');
rotate3d(); % 可旋转观察
8
%%
% 使用ezsurf 画球面
% ezplot('4*sin(x)', '4*cos(x)');
clc; clear;
ezsurf('4*sin(beta)*cos(theta)','4*sin(beta)*sin(theta)','4*cos(beta)')
grid on;
xlabel('x');ylabel('y');zlabel('z');
view(30, 30);
rotate3d();
%%
% 画圆柱面
clc;clear;
[x, y, z] = cylinder(2, 100);
surf(x, y, z);
rorate3d();
% cylinder() 直接画圆柱面
axis square; % 正方形坐标系
% axis square 将当前坐标系图形设置为方形。横轴及纵轴比例是1:1
% axis equal 将横轴纵轴的定标系数设成相同值
上一篇: php面向对象知识点
下一篇: 缺少glibc指定版本的解决方案