Matlab二维图形绘制与图形处理
一、二维图形绘制
1.极坐标图
polar(theta,rho,s)
- theta表示角度,rho表示半径,s指定线性
绘制 r = sin 2 θ cos 2 θ 的极坐标图 \text{绘制}r=\sin 2\theta \cos 2\theta \text{的极坐标图} 绘制r=sin2θcos2θ的极坐标图
theta=linspace(0,2*pi)
rho=sin(2*theta).*cos(2*theta)
polarplot(theta,rho,"g")
title("Polar plot of sin(2θ)cos(2θ)")
2.散点图
x=normrnd(0,1,100)%生成100个标准正态分布随机数
y=trnd(5,100)%100个自由度为5的随机数
scatter(x,y,1,"magenta","filled")
3. 平面等值线图
在 − 2 < x < 2 , − 2 < y < 3 内绘制, z = x e − x 2 − y 2 的等值线图 \text{在}-2<x<2,-2<y<3\text{内绘制,}z=xe^{-x^2-y^2}\text{的等值线图} 在−2<x<2,−2<y<3内绘制,z=xe−x2−y2的等值线图
[x,y]=meshgrid(-2:0.1:2,-2:0.1:3);
z=x.*exp(-x.^2-y.^2)
contour(x,y,z)%到这可以停止了,如果不想添加标签的话,添加标签则需要继续输入
[c,h]= contour(x,y,z)
clabel(c,h)
colormap cool
二、图形处理
x=0:0.1:10
y=normrnd(1,4,101)
scatter(x,y,1,"magenta")
1.添加格栅,图例 和标注
grid on %添加格栅
title("散点图")%添加标题
xlabel("x-axis")
ylabel("y-axis")
2.定制坐标
**axis([xmin,xmax,ymin,ymax])**分别输入x的最小值,最大值,y的最小值,最大值
axis([3,9,-10,10])
3.在之前基础上继续作图
只需要hold on就行了
x=0:0.1:10
y=sin(x)
z=cos(x)
plot(x,y)
hold on
plot(x,z)
hold off将取消,释放当前图形窗口
4.新建图形置于当前界面,figure命令
需要用到figure命令
x=0:0.1:10
y=sin(x)
z=cos(x)
plot(x,y)
title("sinx")
figure(2)
plot(x,z)
title("cosx")
5.窗口分割,一页多图
subplot(x,y,z)
x是图形分割为几行,y是分割为几列
z是位于图形的位置,比如z=1就是放在图形的左上角,z=xy(具体数据)就是右下角
subplot(1,2,1)
x=0:0.1:10
y=sin(x)
z=cos(x)
plot(x,y)
title("sinx")
subplot(1,2,2)
plot(x,z)
title("cosx")
6.图形的缩放
zoom on命令
x=0:0.1:10
y=sin(x)
plot(x,y)
zoom on
鼠标左击此图形将会放大,右击则会缩小
zoom off 关闭命令
三、制作图形动画
改变图形的视角,view(a,b)默认为view(-37.5,30)
[x,y,z]=peaks(30)
surf(x,y,z)
m=moviein(15)
for i =1:15
view(-37.5+24*(i-1),30)
m(:,i)=getframe
end
movie(m)
随便截了一张图