clc;
close all;
clear all;
x= [ 12 20 27 36 45 54 63 72 80 96 112 125 150 175 200 ];
y1= [ 0.83 0.865 0.92 0.935 0.95 0.94 0.9555 0.95 0.94 0.935 0.935 0.955 0.955 0.955 0.955 ];
y2= [ 0.805 0.86 0.9 0.91 0.915 0.92 0.915 0.915 0.905 0.915 0.905 0.91 0.895 0.9 0.905 ];
y3= [ 0.835 0.85 0.86 0.875 0.88 0.88 0.88 0.88 0.86 0.845 0.85 0.84 0.82 0.84 0.87 ];
plot(x, y1, ':ro');
hold on; % 在原图上添加第二个曲线
plot(x, y2, '-g+');
plot(x, y3, '-.b*');
axis([10, 200, 0.7, 1]); % 固定横纵坐标的范围
legend('Gabor+3DPCA', 'Gabor+PCA', 'PCA'); % 依次给曲线添加标注
title('ORL人脸库');
xlabel('特征维数');
ylabel('识别率');
grid on; % 添加网格
1 plot函数
1.1 plot(x, y)
其中x, y是长度相同的向量,以x为横坐标,y为纵坐标绘制曲线。
例1:
x= 0:pi/100:2*pi;
y= 2*exp(-x).*cos(x);
plot(x, y);
1.2 plot(x)
当x为一向量时,以x的序号为横坐标,以x元素的值为纵坐标绘制曲线。
例2:
x= [0.3, 0.5, 0.4, 1, 1.2, 0.9, 0.8, 1.5, 1.3, 0.6];
plot(x);
1.3 plot(x1, y1, x2, y2, ..., xn, yn)
当输入参数都为向量时,x1和y1,x2和y2,...,xn和yn分别组成一组向量对(每一组向量对的长度可以不同),每一个向量对绘制一条曲线,这样可以在同一坐标内绘制多条曲线。
例3:
x1= 0:pi/10:2*pi;
y1= sin(x1);
x2= 0:0.5:6;
y2= 2*exp(-x2);
plot(x1, y1, x2, y2);
1.4 设置曲线样式
颜色 | 标记符号 | 线型 | 标记符号 | 数据点形式 | 标记符号 |
黄 | y | 实线 | - | 点 | . |
紫 | m | 点线 | : | 圆 | o |
青 | c | 点划线 | -. | 叉号 | x |
红 | r | 虚线 | -- | 加号 | + |
绿 | g |
|
| 星号 | * |
蓝 | b |
|
| 正方形 | s |
白 | w |
|
| 菱形 | d |
黑 | k |
|
| 上下三角形 | v |
|
|
|
| 向上三角形 | ^ |
|
|
|
| 六角星 | h |
|
|
|
| 大于号 | > |
|
|
|
| 小于号 | < |
1.5 图像标注
grid on (/off) 给当前图形标记添加(取消)网络
xlable(‘string’) 标记横坐标
ylabel(‘string’) 标记纵坐标
title(‘string’) 给图形添加标题
text(x,y,’string’) 在图形的任意位置增加说明性文本信息
gtext(‘string’) 利用鼠标添加说明性文本信息
axis([xmin, xmax, ymin, ymax]) 设置坐标轴的最小最大值
legend('string1', 'string2', 'string3') 依次给曲线添加标注