图形处理
绘图基本函数
绘图步骤
绘制二维曲线图
>> x=0:0.01:10;
>> y=tan(x);
>> plot(x, y)
运行结果:
绘制对数坐标
>> x=1:0.1*pi:2*pi;
>> y=sin(x);
>> semilogx(x, y, '-*')
绘制极坐标
>> x=0:0.01:10;
>> y1=sin(x);
>> y2=cos(x-2.5);
>> polar(y1, y2, '-r+')
>> x=0:0.1*pi:4*pi;
>> y=sin(x/2)+x;
>> polar(x, y, '-')
双纵坐标曲线: plotyy
>> x=0:0.1*pi:2*pi;
>> y=sin(x);
>> z=exp(x);
>> plotyy(x,y,x,z,'plot','semilogy')
多图形绘制
>> x = 0:.1:20;
>> subplot(2, 2, 1)
>> x = 0:.1:20;
>> subplot(2, 2, 1);
>> plot(x, sin(x));
>> x=0:.1:20;
>> subplot(2, 2, 2);
>> plot(x, cos(x))
>> subplot(2, 2, 3);
>> x=0:.1:2;
>> y1=tan(x);
>> plot(x, y1,'--b*');
曲线的色彩、线型和数据点型参数定义
图题标注
>> x=0:.1:2;
>> y1=sin(x);
>> y2=sin(x-0.25);
>> y3=sin(x-0.5);
>> plot(x, y1, '-b', x, y2,'--r', x, y3, '-.gh')
>> title('There three lines')
坐标轴的标签
1.点击Figure上的Insert菜单下的标签选项
2.代码实现
代码实现
>> x=0:0.01*pi:pi;
>> y=[sin(x'), cos(x')];
>> plot([x', x'], y)
>> x=linspace(-3, 5, 100);
>> y=cos(x);
>> z=sin(x);
>> plot(x, y, x, z)
>> title('一条正弦曲线和一条余弦曲线')
>> xlabel('x的取值范围')
>> ylabel('y的取值范围')
网格坐标
>> x=linspace(-5, 5, 100);
>> y=x.^4+22*x.^2-6*x+10;
>> plot(x, y)
>> grid on
三维绘图
>> t=0:pi/50:20*pi;
>> plot3(sin(t), cos(2*t), sin(t)+cos(t))
三维网线图
>> z = peaks(50);
>> mesh(z);
三维曲面图
>> [X, Y] = meshgrid([-4:0.2:4]);
>> Z=exp(-0.5*(X.^2-Y.^2));
>> surf(X, Y, Z)
特殊图
条形图和面积图
条形图和面积图用于绘制向量和矩阵数据,这两种图形可以用来比较不同组数据的在总体数据中所占的比例,其中条形图适于表现离散型数据,而面积图适于表现连续型数据。
条形图
>> y=[1 2 3 4 5 6 7 8 9 10];
>> bar(y)
离散数据图
>> y=rand(20, 1);
>> stem(y);
方向和矢量图形
MATLAB 提供了一些函数用于绘制方向矢量和速度矢量图形,这些函数有compass、feather、quiver和quiver3
>> x=0:0.1*pi:2*pi;
>> y=x.*sin(x);
>> feather(x,y)
>> w=0:0.1:6;
>> z=sin(w).*exp(j*w);
>> compass(z)
等高线的绘制
>> [x, y, z]=peaks;
>> contour(x, y, z)
图像设置
视点控制
>> [X, Y]=meshgrid([-5:0.2:5]);
>> Z=exp(0.5*(X.^2-Y.^2));
>> surf(X, Y, Z)
>> view(30, 60)
视点控制前:
视点控制后:
颜色映像
使用colormap进行操作,如在上面的图像基础上输入
>> colormap(cool)
光照控制
>> z=peaks(50);
>> surf(z)
>> light('Position', [0.5 -3 2])
控制前:
控制后: