0
点赞
收藏
分享

微信扫一扫

Matlab:图形绘制

洛茄 2022-11-07 阅读 191

Matlab

>> a = 20;
>> x = -2:0.01:2;
>> for i = 1:200
    y = abs(x).^(2/3) + exp(1)/3.*power((pi-power(x,2)),1/2).*sin(a*pi*x);
    a = i/10;
end
>> plot(x,y,'r')

在这里插入图片描述

绘制二维图形

plot函数

%示例1>> y = 1:1:8;
>> plot(y,'k')

示例1如图:
在这里插入图片描述

%示例2>> t = linspace(0,2*pi,200);
>> x = sin(t)+sin(2*t);
>> y = cos(t)-cos(2*t);
>> plot(x,y,'k')

示例2如图:
在这里插入图片描述

%示例3>> t1=linspace(0,2*pi,66);
>> x=cos(t1)+sin(t1);
>> t2=linspace(0,2*pi,88);
>> y=sin(t2)-cos(t2);
>> plot(t1,x,t2,y)

示例3如图:
在这里插入图片描述

fplot函数

%示例1>> fplot(@(x)sin(x.^2)+cos(x.^2),[-pi, pi])

示例1如图:
在这里插入图片描述

%示例2>> fplot(@(t)sin(t), @(t)cos(t), [-pi, pi])

示例2如图:
在这里插入图片描述

fimplicit函数

%示例:
>> fimplicit(@(x,y)x.*x.*x+y.*y.*y-5*x.*y+1/5)

在这里插入图片描述

bar函数

%示例:
>> x = [1:8:88];
bar(x,'grouped');

在这里插入图片描述

histogram函数

%示例:
>> x = [1:1:10];
>> histogram(x,1:1:10)

在这里插入图片描述

pie函数

%示例:
>> x = [1:8:88];
>> pie(x,[1:1:11])

在这里插入图片描述

area函数

%示例:
>> x = [12,18,16,98;68,99,23,45;67,1,6,10;20,22,9,12];
>> area(x)

在这里插入图片描述

图形窗口的分割

>> x=-3:0.1:3;
>> subplot(2,2,2);    %将图形窗口划分成2×2——4个子图,选定2区为当前活动区
>> y2 = sin(2.*x.^2); %图形存放在2>> plot(x,y2);
>> subplot(2,2,3); %选定3区为当前活动区
>> y3 = cos(x.^3); 
>> plot(x,y3);  %图形存放在3

在这里插入图片描述

图形叠加

%示例:
>> t=linspace(0,2*pi,200);
>> x=sin(t)+sin(2*t);
>> y=cos(t)-cos(2*t);
>> plot(x,y);  %绘制三个叶片
>> axis equal
>> hold on   %保持原有图形
>> fplot(@(x)sin(x),@(x)cos(x),[-pi,pi]) %绘制圆

在这里插入图片描述

绘制三维图形

fplot3函数

%示例:
>> t = 0:pi/20:10*pi;
>> x = sin(t)+t.*cos(t);
>> y = cos(t)-t.*sin(t);
>> z = t;
>> plot3(x,y,z)

在这里插入图片描述

二维网格绘制

%示例:
>> a = 0:8;
>> b = 0:8;
>> [x,y] = meshgrid(a,b); %生成二维网格坐标矩阵的函数
>> plot(x,y,'k',y,x,'k') %注意x,y顺序

在这里插入图片描述

三维曲面绘制

%示例:
a = linspace(-2, 2, 25);
[x,y] = meshgrid(a);
z = -exp(-x.^2-y.^2);
subplot(2,3,1)
mesh(x,y,z);
subplot(2,3,2)
meshc(x,y,z);  %meshc函数用于在绘图的同时,在x-y平面上绘制函数的等值线
subplot(2,3,3)
meshz(x,y,z);  %meshz函数用于在网格图基础上在图形的底部外侧绘制平行于z轴的边框线
subplot(2,3,4)
surf(x,y,z); 
subplot(2,3,5)
surfl(x,y,z);  %surfl函数创建一个带光源高光的三维曲面图
subplot(2,3,6)
surfc(x,y,z);  %surfc函数用于在三维曲面的曲面底部显示等高线图

在这里插入图片描述

%示例:
subplot(1,2,1)
fmesh(@(x,y)sin(x).^2+cos(y).^2, [0,pi, 0,pi]);
subplot(1,2,2)
fsurf(@(x,y)sin(x.^2)+cos(y.^2),[0,pi, 0,pi]);

在这里插入图片描述

举报

相关推荐

0 条评论