目录
1 基础绘图
1.1 plot(y)
1.2 hold on/off
1.3 plot(x,y,'str')
1.4 legend()
1.5 title()和label()
1.6 text()和annotation()
练习1
2 图形对象属性
2.1 图形对象
2.2 修改对象的属性
2.2.1 识别对象的手柄
2.2.2 获取或修改对象属性
练习2
2.3 图像窗口
2.3.1 通过调用figure创建一个图像窗口
2.3.2 图像窗口的位置大小
2.3.3 在一个图像窗口画多个图
2.3.4 网格线、图框和坐标轴的控制
2.3.5 存储图像到文件中
Matlab不理解数学函数,因此需要在指定范围内生成函数的数值,以图形方式显示数据“点”。
plot(cos(0:pi/20:2*pi)); %画图
运行结果:
使用“hold on”将两个图放在一个图形中。
hold on %继续画开启,可以把两个图像放一起
plot(cos(0:pi/20:2*pi));
plot(sin(0:pi/20:2*pi));
hold off %继续画关闭
运行结果:
数据标记 | 线型 | 颜色 |
---|---|---|
点(.) . | 实线 - | 黑色 k |
星号(*) * | 虚线 -- | 蓝色 b |
叉号(×) X | 虚点线 -. | 青色 c |
圆(〇) o | 点线 . | 绿色 g |
加号(+) + | 品红 m | |
方形(◻) s | 红色 r | |
菱形(⬦) d | 白色 w | |
五角星(☆) p | 黄色 y | |
下三角(▿) v | ||
上三角(▵) ^ | ||
左三角(⨞) < | ||
右三角(▷) > | ||
六边形 H |
x=0:0.5:4*pi;y=sin(x);h=cos(x);w=1./(1+exp(-x));
g=(1/(2*pi*2)^0.5).*exp((-1.*(x-2*pi).^2)./(2*2^2));
plot(x,y,'bd-',x,h,'gp:',x,w,'ro-',x,g,'c^-');
legend('sin(x)','cos(x)','sigmoid','Gauss function'); %显示图例
x=0:0.1:2*pi;y1 = sin(x);y2 = exp(-x);
plot(x,y1,'--*',x,y2,':o');
xlabel('t = 0 to 2\pi'); %x轴标签
ylabel('values of sin (t) and e^{-x}'); %y轴标签
title('Function Plots of sin (t) and e^{-x}'); %标题
legend('sin(t)','e^{-x}'); %图例
x = linspace(0,3);y = x.^2.*sin(x); plot(x,y);line([2,2],[0,2^2*sin(2)]);
str='\int_{0}^{2}x^{2}sin(x)dx';
text(0.25,2.5,str,'Interpreter','tex'); %Tex解释
%创建注释,坐标为整个图的比例
annotation('arrow',[0.32 0.5],[0.6 0.4]); %arrow箭头注释
画出和的图像并添加标题和图例
t=1:0.01:2;y1=t.^2;y2=sin(2*pi.*t);
h = plot(t,y1,'k',t,y2,'or');
title('Mini Assignment #1');
xlabel('Time (ms)'); ylabel('f(t)');
legend('t^2','sin(2\pi t)','Location','northwest')
几个属性:字型、字体大小、线宽、轴极限、刻度位置、刻度标签
x = linspace(0,2*pi,1000); y = sin(x);plot(x,y);
set(gcf,'Color',[1 1 1]); %gcf:返回当前Figure 对象(当前图窗)的句柄值
%color后面的数组代表RGB三个通道的灰度
函数 | 描述 |
---|---|
gca | 返回“当前”轴的句柄 |
gcf | 返回“当前”数字的句柄 |
allchild | 查找指定对象的所有子对象 |
ancestor | 查找图形对象的源 |
delete | 删除对象 |
findall | 查找所有图形对象 |
x = linspace(0,2*pi,1000);
y= sin(x); plot(x,y);
h = plot(x,y); get(h) %获取对象line属性
get(gca) %获取对象axes的属性
(1)设定轴限值:
第一种方法
set(gca,'XLim',[0,2*pi]);
set(gca,'YLim',[-1.2,1.2]);
第二种方法
xlim([0,2*pi]);ylim([-1.2,1.2]);
(2)轴的字体和刻度的设置:
set(gca,'Fontsize',25);
set(gca,'XTick',0:pi/2:2*pi);
set(gca,'XTickLabel',0:90:360);
set(gca,'XTickLabel',...
{'0','\pi/2','\pi','3\pi/2','2\pi'});
(3)修改线属性:
第一种方法
set(h,'Linestyle','-.','Linewidth',7.0,'color','g');
第二种方法
%%直接在画图时改变线属性
plot(x,y,'-·g','Linewidth',7.0);
(4)删除对象:
delete(h) %删除h线
(5)修改点属性:
x = rand(20,1);set(gca,'Fontsize',18);
plot(x,'-md','Linewidth',2,...
'MarkerEdgecolor','k',... %边缘色
'MarkerFacecolor','g',... %填充色
'Markersize',10); %点大小
xlim([1,20]);
把练习1中的图像修改:
set(h(1),'LineWidth',5.0);
set(h(2),'MarkerFaceColor','m');
set(gca,'Fontsize',15);
x=-10:.1:10;y1 = x.^2-8;y2 = exp(x);
figure,plot(x,y1);figure,plot(x,y2);
figure('Position',[left,bottom,width,height]);
%%left:图像框底距离底部的长度
%%bottom:图像框左距离左部的长度
%%width:图像框宽度;height:图像框高度
subplot(m,n,1); %m,n:矩阵大小,1:位置
t=0:0.1:2*pi;x=3*cos(t);y=sin(t);
subplot(2,2,1);plot(x,y);axis normal %无变化
subplot(2,2,2);plot(x,y);axis square %方形
subplot(2,2,3);plot(x,y);axis equal %x、y的刻度间距相同
subplot(2,2,4);plot(x,y);axis equal tight %tight:坐标轴与线紧密
grid on/off | 使网格线可视或不可视 |
box on/off | 使图框可视或不可视 |
axis on/off | 使坐标轴可视或不可视 |
axis normal | 自动调整轴长和数据单元的相对比例 |
axis square | 使当前轴区域为正方形 |
axis equal | 设置高宽比,使数据单元在各个方向都相同 |
axis equal tight | 将轴限值设置为数据的范围 |
axis image | 图框紧贴在数据周围 |
axsi ij | 将原点放在左上角 |
axis xy | 将原点放在左下角 |
saves(gcf,'','');
位图图像:亦称为点阵图像或栅格图像,是由称作像素(图片元素)的单个点组成的。
文件类型 | 位图图像格式 |
---|---|
‘jpeg’ | JPEG 24位 |
‘png’ | PNG 24位 |
‘tiff’ | TIFF 24位(压缩) |
‘bmpmono’ | BMP单色 |
‘bmp’ | BMP 24位 |
'bmp256' | BMP 8位(256色,使用固定颜色) |
矢量图:可以无限级缩放,对图形进行缩放,旋转或变形操作时,图形不会产生锯齿效果。
文件类型 | 矢量图像格式 |
---|---|
‘pdf’ | 全页便携文件格式(PDF) |
'eps' | 彩色封装PostScript(EPS) |
'epsc' | 三级黑色和白色封装PostScript(EPS)三级颜色 |
'meta' | 增强元文件(仅适用于Windows) |
'svq' | SVG(可伸缩矢量图形)(可插入至办公软件,如Office) |
'ps' | 全页PostScript(PS)级别3黑白 |
'psc' | 全页PostScript(PS)级别3颜色 |