1.二维图形
x = 0:0.1:2*pi;y1 = sin(x);y2 = cos(x);% 二维曲线绘制% 基本函数% plot(y)% y为向量plot(y1); % 纵坐标为y的值;横坐标自动为元素序号(角标+1),此处为1~9% y为矩阵figure; % 开启新绘图窗口,下一次绘图在新窗口y = [y1', y2'];plot(y); % 当y为矩阵,按每一列画出曲线,颜色自动区分% plot(x, y)% xy为向量plot(x, y1); % 先绘制曲线% plot(x1, y1, x2, y2...)plot(x, y1, x, y2); % 在同一个窗口同一坐标轴绘制多条曲线% 线性图形格式设置% 线形颜色数据点plot(x, y1, 'b:o'); % 蓝色 点线 圆圈% b蓝 g绿 r红 c青 m紫 y黄 k黑 w白% -实线 :点线 --虚线 -.点画线% .实点 o圆圈 x叉 +十字 *星号 s方块 d钻石 v下三角 ^上三角 <左三角 >右三角 p五角星 h六角星% 坐标轴plot(x, y1);axis([-1*pi, 3*pi, -1.5, 1.5]); % 规定横纵坐标范围% 图形修饰% 标题标签title('a title'); % 图像标题xlabel('this is x'); % x轴标记,同理还有ylabel,zlabel%图例设置legend('hahaha', 'location', 'best'); % str的顺序与绘图顺序一致; 'best'指图例位置最佳化,还有其他位置%图形保持plot(x, y1);hold on; % 在原有窗口y1曲线上增加绘制下一个图形plot(x, y2); % y2在同一窗口内被绘制hold off;%分割绘制subplot(2, 2, 1); % 分割成2x2区域,在第一块区域绘制下一个图形plot(x, y1); % y1被绘制在4块区域的第一块subplot(2, 2, 2); % 分割方法相同,区域改变plot(x, y2); % y2在第二块区域
2.二维特殊图形绘制
%柱状图
bar(x, y, width, '参数');
% x横坐标向量,m个元素; y为向量时,每个x画一竖条共m条,矩阵mxn时,每个x画n条;
% width宽度默认0.8,超过1各条会重叠;
% 参数有grouped分组式,stacked堆栈式; 默认grouped
% bar垂直柱状图,barh水平柱状图,bar3三维柱状图,barh3水平三维柱状图(三维多一个参数detached, 且为默认)
%饼形图
pie(x, explode, 'lable'); % x为向量显示每个元素占总和百分比, 为矩阵显示每个元素占所有总和百分比
% explode向量与x同长度,为1表示该元素被分离突出显示,默认全0不分离
% pie3绘制三维饼图
%直方图
hist(y, n); % y为向量,把横坐标分为n段绘制
hist(y, x); % x为向量,用于指定每段中间值, 若取N = hist(y, x), N为每段元素个数
%离散数据图
stairs(x, y, 'b-o'); % 阶梯图,参数同plot
stem(x, y, 'fill'); % 火柴杆图,参数fill是填充火柴杆,或定义线形
candle(HI, LO, CL, OP); % 蜡烛图:HI为最高价格向量,LO为最低价格向量,CL为收盘价格向量,OP为开盘价格向量
%向量图
compass(u, v, 'b-o'); % 罗盘图横坐标u纵坐标v
compass(Z, 'b-o'); % 罗盘图复向量Z
feather(u, v, 'b-o'); % 羽毛图横坐标u纵坐标v
feather(Z, 'b-o'); % 羽毛图复向量Z
quiver(x, y, u, v); % 以(x, y)为起点(u, v)为终点向量场图
%极坐标图
% polar(theta, rho, 'b-o'); % 极角theta, 半径rho
theta = -pi:0.01:pi;
rho = sin(theta);
polar(theta, rho, 'b')
%对数坐标图
semilogx(x1, y1, 'b-o');
% 把x轴对数刻度表示, semilogy是y轴对数刻度表示,loglog是两个坐标都用对数表示
%双纵坐标
plotyy(x1, y1, x2, y2, 'fun1', 'fun2');
% fun规定了两条条线的绘制方式,如plot,semilogx,semilogy,loglog,stem等
%函数绘图
f = 'sin(2*x)';
ezplot(f, [0, 2*pi]); % 绘制f并规定横坐标范围,也有[xmin, xmax, ymin, ymax]
x = '2*cos(t)';
y = '4*sin(t)';
ezplot(x, y);
% 绘制x(t),y(t)在[0, 2*pi]图像, 也可以在最后用[tmin, tmax]规定t的范围
3.特殊坐标和图形
loglog (x,y)%双对数坐标
semilogy(x,y) % 以 x 轴为对数坐标
polar(theta,rho) % 极坐标
stair(x,y) % 阶梯图形
bar(x,y) % 条形图
stem( x,y)%火柴杆状图
pie(x)%绘制饼状图 pie3( x)%绘制三维饼状图
ribbon(x,y,c)%绘制带状图, c是颜色
4.其他命令
subplot(a,b,n) % 将绘图区分为 a*b 区,选择其中的 n 区
hold % 在原来视图中绘图
plotyy (x1,y1,x2,y2 )%在同一坐标系中左右使用不同的坐标
5.填充命令
fill(x1,y1,x2,y2,```,c) %用 c 颜色填充由 (x1,y1) 、 (x2,y2) ···确定的多边形
erea(x,y,’r’) %用 r 色填充由 x, y 函数确定边界的区域
6.三维图形
1)绘图命令
plot3(x,y,z) % 最基本的三维图形函数,函数除了增加第三维坐标外,功能和 plot 相同
mesh(x,y,z) %绘制三维网格图。在不需要特别精细的三维曲面结果时使用。
surf(x,y,z) % 绘制三维曲面图,各线条之间的补面用颜色填充
%三维曲线
x = 0:0.1:2*pi;
y = sin(x); z = cos(x);
plot3(x, y, z, 'b-*');
%三维曲面
%三维网格
x = -5:0.1:5; % 规定了x轴采样点,也规定了x轴范围
y = -4:0.1:4; % 规定了y轴采样点,也规定了y轴范围
[X, Y] = meshgrid(x, y); % 得到了xoy面网格点
Z = X.^2+Y.^2;
mesh(X, Y, Z) % XY是meshgrid得到的网格点,Z是网格顶点,c是用色矩阵可省略
%三维表面图
x = -5:0.1:5;
y = -4:0.1:4;
[X, Y] = meshgrid(x, y);
Z = X.^2+Y.^2; % 以上部分同上
surf(X, Y, Z) % 与上一个类似

2)视点
view([x,y,z]) %[x,y,z] 观察点坐标
3)等高线
contour(x,y,z,n) %以 z 为高程值, x,y 为横纵坐标的平面等值线图, n 缺省值为 10
contour3(x,y,z,n) %````` 三维等值线图
meshc(x,y,z) %绘制带等值线图的网线图
