【Matlab】二维绘图总结
参考资料:
《Matlab编程及其应用第三讲》——陆伟
《Matlab 帮助文档》
文章目录
- 1. 基本绘图函数
- 2. plot 函数的使用格式
- 3. plot 函数对两个主要参数的形式的要求
- 4. 更改线条性质
- (1)线型( L i n e S t y l e Line Style LineStyle)、点型( M a r k e r Marker Marker)和颜色( C o l o r Color Color)
- (2)线宽( L i n e W i d t h LineWidth LineWidth)
- 4. 加入说明文字
- 5. 更改坐标轴性质
- 6. 其他的一些函数
- (1)hold 函数
- (2)grid 函数
- (3)plotyy 函数
- (4)subplot 函数
- (5)对复数进行绘图
- 7. 写在最后
1. 基本绘图函数
Matlab 中的基本绘图函数就是plot
函数。这个函数的功能就是对 x x x 坐标及对应的 y y y 坐标绘图。
2. plot 函数的使用格式
plot
函数的使用格式如下:
plot(x, y, ...);
注:省略号部分可以补充图形的性质,随后讲解。
3. plot 函数对两个主要参数的形式的要求
该函数对 x x x和 y y y的形式有一定的要求,不符合要求会报错,符合要求的形式见下表。
x x x可能的形式 | y y y可能的形式 | 绘图的效果 |
---|---|---|
1 × n 1\times n 1×n 的矩阵 | 1 × n 1\times n 1×n 的矩阵 | 对 y y y绘图 |
1 × n 1\times n 1×n 的矩阵 | m × n m\times n m×n的矩阵 | 用 x x x与 y y y的每个行向量绘图 |
m × n m\times n m×n的矩阵 | m × n m\times n m×n的矩阵 | 用 x x x的每一个行向量与 y y y对应行向量绘图 |
特殊使用形式:只给出 y y y,不给出 x x x :
plot(y, ...);
这时,则会把 y y y的索引组成的矩阵当作 x x x进行绘图。
4. 更改线条性质
(1)线型( L i n e S t y l e Line Style LineStyle)、点型( M a r k e r Marker Marker)和颜色( C o l o r Color Color)
先上例子:
clear; clc;close all;t = 0 : pi/10 : 2*pi;x = t - 3;y = sin(t);z = cos(t);plot(t, x, '-r'); hold on;plot(t, y, '--g');plot(t, z, '*b');%上面两行也可以写作一行: plot(t, x, '-r', t, y, '--g', t, z, '*b');
绘图结果:
- 线型
plot 函数的 Line Style | 说明 |
---|---|
- | 实线(默认值) |
- - | 虚线 |
: | 点线 |
-. | 点虚线 |
- 点型
plot 函数的 Marker | 说明 |
---|---|
O | 圆形 |
+ | 加号 |
X | 叉号 |
* | 星号 |
. | 点号 |
^ | 朝上三角形 |
V | 朝下三角形 |
- 颜色
plot 函数的 Color | 颜色效果 | RGB值 |
---|---|---|
b | 蓝色(Blue) | (0,0,1) |
c | 青蓝色(Cyan) | (0,1,1) |
g | 绿色(Green) | (0,1,0) |
k | 黑色(Black) | (0,0,0) |
m | 紫黑色(Magenta) | (1,0,1) |
r | 紅色(Red) | (1,0,0) |
w | 白色(White) | (1,1,1) |
y | 黃色(Yellow) | (1,1,0) |
修改线型、点型或颜色时,直接在 x , y x, y x,y后面添加(用逗号隔开)相应的标记(用单引号引起来)就可以了,下面给出一些例子:
%线型plot(x, y, '--k');plot(x, y, 'b:');plot(x, y, '-.c');%点型plot(x, y, 'Xm');plot(x, y, 'y*');plot(x, y, '+g');%同时设置线型和点型plot(x, y, '*-r');plot(x, y, '^--g');
注:颜色的标记和线(点)型的标记的位置可调换,谁在前面都是可以的。也可以同时设置线型和点型。
(2)线宽( L i n e W i d t h LineWidth LineWidth)
直接上例子:
%线宽默认是 0.5plot(x, y, '--r', 'LineWidth', 2);plot(x, y, '-.g', 'LineWidth', 0.3);
性质方面常用的就这些,如果想实现某些特殊需求,可以查阅Matlab帮助文档。
4. 加入说明文字
为增强图形的可读性,常常需要对图形或坐标轴加入说明性的文字。
指令 | 说明 |
---|---|
title
|
图形的标题 |
xlabel
|
x x x 轴的说明 |
ylabel
|
y y y 轴的说明 |
legend
|
标注图例 |
text
|
图形中加入文字 |
gtext
|
使用鼠标定位文字位置 |
注:一般 l e g e n d legend legend 写在最后,前面画几个图, l e g e n d legend legend 中就添加几项图例。
例子:
clear; clc;close all;t = 0 : pi/10 : 2*pi;x = t - 3;y = sin(t);z = cos(t);plot(t, x, '-r', t, y, '--g', t, z, '*b');xlabel('t = 0 to 2\pi'); ylabel('values of t - 3, sin(t) and cos(t)');title('Function Plots of t - 3, sin(t) and cos(t)');%在(3,3)处加上字体颜色为蓝色的文本text(3, 3, '加的文本在这里', 'Color', 'b');%这里为了不遮挡图形,将图例的位置放在'northwest'处,也就是左上角,默认的是右上角legend({'t - 3', 'sin(t)','cos(t)'}, 'location', 'northwest');shg; %显示图像
绘图结果:
注:文本中可以使用 Latex 的语法。
5. 更改坐标轴性质
最常用的是axis
指令,常用的功能列举如下:
clear; clc;close all;t = 0 : pi/10 : 2*pi;y = sin(t);plot(t, y);x1 = 0;x2 = 6;y1 = -3;y2 = 3;axis([x1 x2 y1 y2]); %设置x轴范围为 x1 到 x2, y轴范围为 y1 到 y2;shg;pause(2);%其他一些比较常用的功能如下:axis xy; %xy-Default方向。对于2d视图中的轴,y轴是垂直的,值从下到上递增shg;pause(2);axis ij; %ij-Reverse方向。对于2d视图中的坐标轴,y轴是垂直的,值从上到下递增shg;pause(2);axis auto; %自动生成坐标轴范围shg;pause(2);axis padded; %在图和绘图框之间填充边距shg;pause(2);axis tight; %将坐标轴限制设置为与数据的范围相等,以便绘图延伸到坐标轴的边缘shg;pause(2);axis equal; %将各坐标轴的单位长度设置为相等shg;pause(2);axis off; %隐藏坐标轴shg;pause(2);%注:上述的命令可以叠加,如下面的例子:axis equal tight;
6. 其他的一些函数
(1)hold 函数
这个函数在前面的例子中已经使用到了,它的功能是在已经画了曲线的图上再继续添加曲线。
clear; clc;close all;t = 0 : pi/10 : 2*pi;x = t - 3;y = sin(t);plot(t, x);shg;%这里如果不添加这个语句,那么上面这个图形会消失,即被下面这个图形覆盖hold on;plot(t, y);shg;%如果想重新画图,不想再在原来的图上添加图形,使用hold off;hold off;z = cos(t);plot(t, z);shg;
(2)grid 函数
有时希望在图形上加上网格,以便更好地观察波形的变化,这时便可以使用grid on
指令,如果想要关闭网格,再使用grid off
指令即可。
例子:
clear; clc;close all;t = 0 : pi/10 : 2*pi;y = cos(t);plot(t, y);grid on; %显示网格线shg;grid minor; %使用这个指令可以显示主要和次要网格线shg;grid off; %关闭网格线shg;
(3)plotyy 函数
在同一窗口画幅度相差很大的两条曲线,采用不同的y轴刻度。
如:
x = 0:0.01:20;y1 = 200*exp(-0.05*x).*sin(x); %点乘是两个矩阵中的每一个元素相乘y2 = 0.8*exp(-0.5*x).*sin(10*x);plotyy(x, y1, x, y2, 'plot');
产生的效果如下图:
(4)subplot 函数
使用指令subplot(m, n, p)
可以将窗口分成 m × n m\times n m×n 个子窗口,下一个 plot 指令绘图于第 p p p 个子窗口。 p p p 的计数方法为由左至右,从上到下进行计数,从1开始。
举例如下:
x = 0:pi/30:2*pi;subplot(2, 2, 1); %左上角plot(x, sin(x));title('sin(x)');subplot(2, 2, 2); %右上角plot(x, cos(x));title('cos(x)');subplot(2, 2, 3); %左下角plot(x, exp(-x).*sin(3*x));title('e^{-x} \cdot sin(3*x)'); %这里使用了Latex语法:\cdot(点乘)subplot(2, 2, 4); %右下角plot(x, x.^2);title('x^2');
产生的效果图如下:
注:使用subplot()
时还可以组合子窗口,比如命令subplot(2, 2, [1, 3])
就是将1号窗口和3号窗口组合起来,下一个plot
指令就是在这个组合后的窗口进行绘图,这里就不再举例子了。
(5)对复数进行绘图
z是一个复数向量,那么命令plot(z)
便等价于plot(real(z), imag(z))
,即将z的实部和虚部当成x坐标和y坐标来画图。
举例如下:
theta = pi/2 : 2*pi/5 :(2*pi+pi/2);z = exp(j*theta);colordef black;//将背景色设置为黑色plot(z);%使横纵坐标单位长度相等,同时设置横纵坐标的范围刚好等于数据的范围axis equal tight;axis off;%隐藏坐标轴
最后的效果如下:
7. 写在最后
如果哪里有错误欢迎指出,共同学习,共同进步!
如果有什么问题,欢迎提问!
谢谢!
下一篇文章预告:【Matlab】三维绘图总结
欢迎继续关注
链接指路:
下一篇:【Matlab】三维绘图总结
【Matlab】二维绘图总结相关推荐
- MATLAB二维绘图(二)向图中添加标题,坐标轴,图标和文字信息
MATLAB二维绘图(二)向图中添加标题,坐标轴,图标和文字信息 1.添加标题.图例.x轴信息和y轴信息,示例: %% 添加标题 clear; clc; close all; x = 0:0.1:2* ...
- matlab二维绘图部分
matlab二维绘图部分 X,Y是向量,分别表示点集的横坐标和纵坐标 PLOT(X,Y,S) 符号函数(显函数.隐函数和参数方程)画图 (1) ezplot ezplot('f(x)',[a,b]) ...
- Matlab 二维绘图函数(plot类)
plot 功能 绘制二维图形的最基本函数. 语法 //x为向量时,以x的元素值为纵坐标,x的序号为横坐标绘制曲线. //x为矩阵时,以其序号为横坐标,按列绘制每列元素值相对于其序号的曲线. polt( ...
- Matlab二维绘图---plot函数详解
plot函数是matlab中最主要的二维作图函数.(参考文献--MATLAB HELP 文档) 一.常用的函数主要的形式有以下几种: plot(X,Y) plot(X,Y,LineSpec) p ...
- Matlab二维绘图
1.画图plot 当需要画连续函数时,可以用fplot函数,当需要画符号函数时,可以用ezplot函数. 极坐标时可以用polar函数,对数坐标用semilogy函数,双对数用loglog函数,双y坐 ...
- matlab二维绘图plot和fplot函数
1.plot函数 2.fplot函数可以自主选择取样间隔
- matlab二维三维图形绘制和坐标轴范围设置
matlab二维绘图 一. 二维图形(Two dimensional plotting) 1. 基本绘图函数(Basic plotting function):Plot, semilogx, se ...
- 第六章:MATLAB:二维绘图(plot绘图命令 fplot命令 ezplot命令 不同的坐标系)
第六章:二维绘图 6.1. 二维绘图 6.1.1. plot绘图命令: 6.1.2. fplot绘图命令: 6.1.3. ezplot绘图命令: 6.2. 不同坐标系下的绘图命令: 6.2.1. 极坐 ...
- matlab四维图形,MATLAB二维、三维、四维绘图
二维图形绘制直角坐标极坐标统计图面域图填色图羽毛图.射线图Voronoi图彩带图二维半图三维图形绘制线状图数组图网格图面状图统计图瀑布图散点图函数图四维图形绘制切片图颜色权重图Reference 二维 ...
- matlab 极坐标 二维,matlab笔记二维绘图(极坐标隐函数等)008.docx
matlab笔记二维绘图(极坐标隐函数等)008.docx 008二维绘图(极坐标.隐函数等)一.极坐标图形调用格式为POLART,R,'选项'其中,T为极角,R为极径,选项的使用和PLOT类似.例1 ...
最新文章
- 反射式红外光电管 ITR8307
- 安全研究人员发现:Nanocore等多个远控木马滥用公有云服务传播
- 【python】中的“.T”操作:转置
- Go 语言学习笔记(二):函数
- Sublime Text 3 初试牛刀
- 微软从安卓那里获取的盈利比重WinPhone 7还多
- S-MAC协议的相关知识
- PICKIT3 WIN10 无法连接问题解决
- scikit-learn 线性回归算法
- VirtualApp hook so及activity回调
- 相机标定—标定图片拍摄规范(附棋盘图)
- java的学习????
- 【工控协议专题01】Modbus协议原理与安全性分析
- 第四章 python中的循环结构
- X_Forward_For(XXF)获取用户IP
- Installation failed due to: ‘-99‘ OPPO手机
- Android KeyLogger Demo
- macOS端React的项目WebPack热更新(HMR)失效问题分析及解决,原因竟是Windows文件系统不区分大小写导致
- CAD二次开发获取CAD内所有的大字体SHX字体
- 在线图片文字识别html,免费在线文字识别服务:Free Online OCR 快速图片转文本工具...
热门文章
- Ubuntu 解压缩zip文件乱码问题解决方案
- 0基础手把手教你弄寝室指纹识别开门装置(arduino uno,as608)
- CSS实现背景模糊/毛玻璃效果
- 基于Java网上药品售卖系统设计实现(源码+lw+部署文档+讲解等)
- wm harbor 默认密码_CentOS部署Harbor镜像仓库
- 【立创开源】ESP32-S3-PIE 基于ESP32-S3的卡片随身终端
- 海量数据下,如何优雅设计mysql数据库
- 软件测试入门知识——学习笔记
- 会计转java6_会计转行从事 IT,如何在一年时间内全职学习?
- 封装insertAfter