Matlab中plot函数参数解析
功能
二维曲线绘图
语法
plot(Y)
plot(X1,Y1,...)
plot(X1,Y1,LineSpec,...)
plot(...,'PropertyName',PropertyValue,...)
plot(axes_handle,...)
h = plot(...)
hlines = plot('v6',...)
描述
plot(Y)如果Y是m×n的数组,以1:m为X横坐标,Y中的每一列元素为Y坐标,绘制n条曲线;如果Y是n×1或者1×n的向量,则以1:n为横坐标,Y为坐标表绘制1条曲线;如果Y是复数,则plot(Y)等效于plot(real(Y),imag(Y));其它使用情况下,忽略坐标数据中的虚部。
plot(X1,Y1,...)如果X和Y都是数组,按列取坐标数据绘图,此时它们必须具有相同的尺寸;如果X和Y其中一个是向量另一个为数组,X和Y中尺寸相等的方向对应绘制多条曲线;如果X和Y其中一个是标量另一个为向量,那么将绘制垂直X或者Y轴离散的点。
| X | Y | 备注 | |
| m×n | m×n | 按列取坐标数据绘制n条曲线 | X和Y必须具有相同的尺寸 | 
| 1×n或n×1 | m×n或n×m | 自动匹配尺寸相同方向绘制m条曲线 | 任意四种组合,效果一样 | 
| m×n或n×m | 1×n或n×1 | 同上 | 同上 | 
| 1×1 | 1×n或n×1 | 绘制垂直X轴离散点 | Y可以任意向量 | 
| 1×n或n×1 | 1×1 | 绘制垂直Y轴离散点 | X可以任意向量 | 
plot(X1,Y1,LineSpec,...)通过参数LineSpec指定曲线的曲线属性,它包括线型、标记符和颜色。plot函数支持同时绘制任意组图形
plot(X1,Y1,LineSpec1,X2,Y2,LineSpec2,...)
此时完全等效于
plot(X1,Y1,LineSpec1,...) hlod all plot(X2,Y2,LineSpec2,...)
MATLAB中提供的线型属性有:
| 线型 | 说明 | 标记符 | 说明 | 颜色 | 说明 | 
| - | 实线(默认) | + | 加号符 | r | 红色 | 
| -- | 双划线 | o | 空心圆 | g | 绿色 | 
| : | 虚线 | * | 星号 | b | 蓝色 | 
| :. | 点划线 | . | 实心圆 | c | 青绿色 | 
| x | 叉号符 | m | 洋红色 | ||
| s | 正方形 | y | 黄色 | ||
| d | 菱形 | k | 黑色 | ||
| ^ | 上三角形 | w | 白色 | ||
| v | 下三角形 | ||||
| > | 右三角形 | ||||
| < | 左三角形 | ||||
| p | 五角星 | ||||
| h | 六边形 | 
需要说明的是,LineSpec中设置曲线线型、标识符和颜色三项属性时,控制符的顺序不受限制并可以省略或者部分省略。也就是说'r-.*'、'-.r*'、'*-.r'等形式是等效的,都表示使用红色点划线连接各个节点,各节点使用“*”标识。
plot(...,'PropertyName',PropertyValue,...)设置由plot创建的所有曲线句柄对象的属性,Line对象属性和属性值参见附录,具体设置参考下面的实例,当然可以使用set/get进行设置。 plot(axes_handle,...)指定坐标系,也就是在axes_handle坐标系中绘图,在没有指定时默认为gca。
h = plot(...)返回由plot创建的所有曲线句柄对象的句柄。每条曲线对应一个句柄,如果有n条曲线,则h为n×1的数组。
注意
在同时绘制多条曲线时,如果没有指定曲线属性,plot按顺序循环使用当前坐标系中ColorOrder和LineStyleOrder两个属性。
默认情况,MATLAB在每次调用plot函数时将ColorOrder和LineStyleOrder自动重置为DefaultAxesColorOrder和DefaultAxesLineStyleOrder。Default**属性我们可以自定义,有效期至MATLAB关闭,Matlab下次启动时将Default**属性重置为厂家设置(Factory)
set(0,'DefaultAxesColorOrder',’r|g|b|k’,...
'DefaultAxesLineStyleOrder','-|-.|--|:')
使用hold all命令可以阻止调用plot函数时自动重置ColorOrder和LineStyleOrder属性,而是循环使用。注意hold on只是使多次绘制的图形叠加(相当于NextPlot),但不能阻止属性重置。
另外我们可以通过下面四个属性设置标识符的颜色和大小
LineWidth——指定线宽 MarkerEdgeColor——指定标识符的边缘颜色 MarkerFaceColor——指定标识符填充颜色 MarkerSize——指定标识符的大小
注意上面四个属性是针对当前坐标系中所有曲线的
实例
% by dynamic
% see also http://www.matlabsky.com
% 2009.8.20
%
X=1:10;
% 两个都是数组,必须具有相同的尺寸
X1=[X;X;X]';%10×3
Y1=rand(10,3)+1;%10×3
% 其中一个为向量,另一个为数组,自动匹配尺寸相等方向
X2=1:0.1:10;%1×91
Y2=[sin(X2);cos(X2)]';%91×2
% 其中一个是标量,另一为矢量,绘制垂直坐标轴的离散点
X3=1:10;
Y3=-0.5;
fh=figure('numbertitle','off','name','PLOT Usability Demo');%创建figure对象
ah=axes;%创建axes对象
h=plot(...%返回所有曲线句柄
    ah,...%指定坐标系,可以省略,此时默认gca
    X1,Y1,...%坐标数据   
    '-.^',...%曲线属性,可以省略或部分省略,此时自动选择
    X2,Y2,...
    'm-',...
    X3,Y3,...
    'o',...%注意此组数据设置线型和颜色无效,因为默认绘制离散点
    'LineWidth',2,...%线宽
    'MarkerEdgeColor','k',...%标识符边缘颜色
    'MarkerFaceColor','r',...%标识符填充颜色
    'MarkerSize',8)%标识符大小

subplot函数解析:
subplot是将多个图画到一个平面上的工具。其中,m表示是图排成m行,n表示图排成n列,也就是整个figure中有n个图是排成一行的,一共m行,如果第一个数字是2就是表示2行图。p是指你现在要把曲线画到figure中哪个图上,最后一个如果是1表示是从左到右第一个位置。下面是这个例子,可加深理解:
x1=[1 2 3];x2=x1;x3=x2;x4=x1;
y1=[2 4 6];y2=2*y1;y3=3*y1;y4=4*y1;
subplot(2,2,1)
plot(x1,y1);
axis([0,20,0,20])
subplot(2,2,2)
plot(x2,y2);
  axis([0,20,0,20])
subplot(2,2,3)
plot(x3,y3)
  axis([0,20,0,20])
  subplot(2,2,4)
plot(x4,y4)
axis([0,20,0,20])
结果为:

Matlab中plot函数参数解析的更多相关文章
- 【原创】Matlab中plot函数全功能解析
		[原创]Matlab中plot函数全功能解析 该帖由Matlab技术论(http://www.matlabsky.com)坛原创,更多精彩内容参见http://www.matlabsky.com 功能 ... 
- Matlab中plot函数全功能解析
		Matlab中plot函数全功能解析 功能 二维曲线绘图 语法 plot(Y)plot(X1,Y1,...)plot(X1,Y1,LineSpec,...)plot(...,'PropertyName ... 
- Matlab中unifrnd函数使用解析
		1.生成N阶[a,b]均匀分布数组 >> unifrnd(3,5,5,5) ans = 3.8651 4.6677 4.8115 4.3456 4.8560 4.0241 3.4079 3 ... 
- [ZT] matlab中plot画图参数的设置
		一.Matlab绘图中用到的直线属性包括: (1)LineStyle:线形 (2)LineWidth:线宽 (3)Color:颜色 (4)MarkerType:标记点的形状 (5)MarkerSize ... 
- matlab中plot画图参数的设置
		原文链接:http://blog.sciencenet.cn/blog-281551-573856.html 一.Matlab绘图中用到的直线属性包括: (1)LineStyle:线形 (2)Line ... 
- matlab 中“newff” 函数的参数设置
		matlab 中"newff" 函数的使用方法技巧|和各参数的意义 先来一个简单的源程序让大家练习一下: % Here input P and targets T define a ... 
- Matlab中 awgn 函数输入参数带有‘measured’ 时snr的含义
		MATLAB中awgn 函数可以为输入信号x 添加一定大小的噪声. out = awgn(in,snr,'measured'); 是一种常见的使用方法,意思是在添加噪声前先测量一下输入信号的功率,再 ... 
- matlab中subplot函数的功能
		转载自http://wenku.baidu.com/link?url=UkbSbQd3cxpT7sFrDw7_BO8zJDCUvPKrmsrbITk-7n7fP8g0Vhvq3QTC0DrwwrXfa ... 
- JS中给函数参数添加默认值(多看课程)
		JS中给函数参数添加默认值(多看课程) 一.总结 一句话总结:咋函数里面是可以很方便的获取调用函数的参数的,做个判断就好,应该有简便方法,看课程. 二.JS中给函数参数添加默认值 最近在Codewar ... 
随机推荐
- delphi 从TWebBrowser WebBrowser得到全部html源码
			delphi 从TWebBrowser WebBrowser得到全部html源码 http://blog.csdn.net/webouse/article/details/3912174 网上查询 ... 
- 制作Ubuntu Live USB的方法
			首先准备一个U盘 然后下载unetbootin 项目主页http://unetbootin.net/ 下载最新版本的unetbootin 打开后界面如下: 如果你已经下载好了ubuntu-12.04- ... 
- 神器——Chrome开发者工具(一)
			这里我假设你用的是Chrome浏览器,如果恰好你做web开发,或者是比较好奇网页中的一些渲染效果并且喜欢折腾,那么你一定知道Chrome的开发者工具了.其实其他浏览器也有类似工具,比如Firefox下 ... 
- js之数组常见的方法
			主要介绍数组的一些常用的方法,方法多了,就容易混淆,结果就是方法用错,甚至不会用: 一.数组的定义: 1.字面量/直接量: var arr = [1, 2, 'js', 'java']; 2.通过内部 ... 
- sublime3可用key
			—– BEGIN LICENSE —–Nicolas HennionSingle User LicenseEA7E-8660758A01AA83 1D668D24 4484AEBC 3B04512C8 ... 
- 华为OJ:字符串合并处理
			字符串合并处理 按照指定规则对输入的字符串进行处理. 详细描述: 将输入的两个字符串合并. 对合并后的字符串进行排序,要求为:下标为奇数的字符和下标为偶数的字符分别从小到大排序.这里的下标意思是字符在 ... 
- lintcode:单词切分
			单词切分 给出一个字符串s和一个词典,判断字符串s是否可以被空格切分成一个或多个出现在字典中的单词. 样例 s = "lintcode" dict = ["lint&qu ... 
- python_ftplib实现通过FTP下载文件
			1. Ftplib常用函数介绍 Python中默认安装的ftplib模块定义了FTP类,其中函数有限,可用来实现简单的ftp客户端,用于上传或下载文件,本次主要介绍连接FTP并且进行文件下载功能,可 ... 
- scp在Linux主机之间复制不用输入密码
			把你的本地主机用户的ssh公匙文件复制到远程主机用户的~/.ssh/authorized_keys文件中,假设本地主机linux(10.1.1.1),远程主机linux(10.1.1.2) 一,在li ... 
- 实记JLink刷固件方法
			最近J-Link调试程序,不知何故,USB报无法连接,试了别的电脑也是这样.文件存于“百度网盘/05.组装维修/4.单片机/1.JLink-ARM仿真器”下.所有的操作基于WIN7 32位系统. 1. ... 
