Matlab中plot函数全功能解析
该帖由Matlab技术论(http://www.matlabsky.com)坛原创,更多精彩内容参见http://www.matlabsky.com
功能
二维曲线绘图
语法
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必须具有相同的尺寸(必须完全一样,一个mxn 一个nxm是不可以的) |
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)%标识符大小
Matlab中plot函数全功能解析相关推荐
- matlab中axes显示,【原创】MATLAB中axes函数全功能解析
axes ★★★★★ 功能 创建坐标系图形对象 语法 axes axes('PropertyName',propertyvalue,...) axes(h) h = axes(...) 描述 axes ...
- Matlab中plot函数及legend函数详解
Matlab中plot函数及legend函数详解 Matlab中plot函数及legend函数详解 Matlab中plot函数全功能解析 功能 二维曲线绘图 语法 plot(Y) plot(X1,Y1 ...
- MATLAB中plot()函数的用法
文章目录 前言 一.plot()函数 二.代码运行结果 总结 前言 此为本人学习中的一些笔记总结,仅供参考. 提示:以下是本篇文章正文内容,下面案例可供参考 一.plot()函数 提示:关于plot( ...
- MATLAB中plot函数如何在实线上加点
此博客为个人博客,不涉及商业用途,仅提供学习参考,内容均来自个人原创以及互联网转载和摘录. 此博客上带有原创标识的文章.图片.文件等,未经本人允许,不得用于商业用途以及传统媒体.网络媒体或个人转载请注 ...
- 【笔记】:Python实现Matlab中sub2ind函数的功能
(一)Matlab中sub2ind函数 1.sub2ind函数的功能 将下标转换为线性索引. 2.sub2ind函数的语法 有以下两种形式 (1)ind = sub2ind(sz, row, col) ...
- matlab中plot函数画线时 颜色和类型
转自 https://blog.csdn.net/garfielder007/article/details/50449140 matlab里plot函数画线时有很多的颜色和类型可以选择,下面列举一些 ...
- Matlab中plot函数参数解析
功能 二维曲线绘图 语法 1 2 3 4 5 6 7 plot(Y) plot(X1,Y1,...) plot(X1,Y1,LineSpec,...) plot(...,'PropertyName', ...
- MATLAB中plot函数的linespec参数
这篇文章的目的,就是记录一下plot函数的linespec参数的每个线型和点型选项到底指的是什么.因为MATLAB帮助中只有文本解释,在这里把每个选项都画出来,更为直观一些. 在MATLAB中画图时, ...
- 一句话解决matlab中plot函数设置坐标轴尺度
matlab中的plot函数的坐标尺度一般是自动生成的,但是有时候是不太令人满意的,可根据以下方法修改尺度. 可通过此句代码实现,将这句代码放在plot函数之后即可. set(gca,'xtick', ...
最新文章
- 当 Docker 遇到 Intellij IDEA,再次解放了生产力~
- Atlas风云——送给防范网络侵权的人
- react 组件的属性
- python方向-Python发展的4个方向
- csharp: Aspose.Words create table
- linux gnome3安装_Windows 10安装与管理WSL体验原生Linux系统
- springboot多数据源动态数据源(主从)
- 获取Java接口的所有实现类
- ISCSI 1-由零开始
- android studio 获取SHA1值 MD5值
- LintCode 600. 包裹黑色像素点的最小矩形(BFS)
- 怎么用python将日期转化为数字_python实现将中文日期转换为数字日期
- 2017 科技大事件回顾:智能音箱大战、数据泄露于内贼
- 基于python的性能测试工具_基于 Python 的性能测试工具 locust 与 LR 的简单对比[转发]...
- 如何合并两个excel表格数据
- Spring MVC 第一个HelloWorld程序
- java web实现第三方在线支付
- React Router 4 简介及其背后的路由哲学
- xp系统如何启用服务器服务,xp系统怎么样启用远程服务器
- Cisco服务器硬盘状态jbod,2018-11-06 JBOD模式下LSI9361RAID卡操作步骤
热门文章
- 在Mac上使用Nginx和FastCGI部署Flask应用
- (转)失败和拒绝,也是一种肯定
- 如何強迫 .Net 應用程式輸出英文的例外訊息
- python爬取正确但不出文件_python爬取糗事百科,该如何正确保存到本地文件夹?报错-问答-阿里云开发者社区-阿里云...
- android 相片裁剪空间,科学网—根据需要的空间范围对目标图层进行空间裁剪 - 孙露的博文...
- linux吃鸡游戏下载,沙雕糖豆人吃鸡战场
- 超级黑科技代码!Python打造电脑人脸屏幕解锁神器附带接头暗号
- 远程服务器如何传文件大小,linux服务器远程传文件大小
- 云服务器现安全漏洞及防护措施
- 开源Jekyll助您构建你的网站