该帖由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函数全功能解析相关推荐

  1. matlab中axes显示,【原创】MATLAB中axes函数全功能解析

    axes ★★★★★ 功能 创建坐标系图形对象 语法 axes axes('PropertyName',propertyvalue,...) axes(h) h = axes(...) 描述 axes ...

  2. Matlab中plot函数及legend函数详解

    Matlab中plot函数及legend函数详解 Matlab中plot函数及legend函数详解 Matlab中plot函数全功能解析 功能 二维曲线绘图 语法 plot(Y) plot(X1,Y1 ...

  3. MATLAB中plot()函数的用法

    文章目录 前言 一.plot()函数 二.代码运行结果 总结 前言 此为本人学习中的一些笔记总结,仅供参考. 提示:以下是本篇文章正文内容,下面案例可供参考 一.plot()函数 提示:关于plot( ...

  4. MATLAB中plot函数如何在实线上加点

    此博客为个人博客,不涉及商业用途,仅提供学习参考,内容均来自个人原创以及互联网转载和摘录. 此博客上带有原创标识的文章.图片.文件等,未经本人允许,不得用于商业用途以及传统媒体.网络媒体或个人转载请注 ...

  5. 【笔记】:Python实现Matlab中sub2ind函数的功能

    (一)Matlab中sub2ind函数 1.sub2ind函数的功能 将下标转换为线性索引. 2.sub2ind函数的语法 有以下两种形式 (1)ind = sub2ind(sz, row, col) ...

  6. matlab中plot函数画线时 颜色和类型

    转自 https://blog.csdn.net/garfielder007/article/details/50449140 matlab里plot函数画线时有很多的颜色和类型可以选择,下面列举一些 ...

  7. Matlab中plot函数参数解析

    功能 二维曲线绘图 语法 1 2 3 4 5 6 7 plot(Y) plot(X1,Y1,...) plot(X1,Y1,LineSpec,...) plot(...,'PropertyName', ...

  8. MATLAB中plot函数的linespec参数

    这篇文章的目的,就是记录一下plot函数的linespec参数的每个线型和点型选项到底指的是什么.因为MATLAB帮助中只有文本解释,在这里把每个选项都画出来,更为直观一些. 在MATLAB中画图时, ...

  9. 一句话解决matlab中plot函数设置坐标轴尺度

    matlab中的plot函数的坐标尺度一般是自动生成的,但是有时候是不太令人满意的,可根据以下方法修改尺度. 可通过此句代码实现,将这句代码放在plot函数之后即可. set(gca,'xtick', ...

最新文章

  1. 当 Docker 遇到 Intellij IDEA,再次解放了生产力~
  2. Atlas风云——送给防范网络侵权的人
  3. react 组件的属性
  4. python方向-Python发展的4个方向
  5. csharp: Aspose.Words create table
  6. linux gnome3安装_Windows 10安装与管理WSL体验原生Linux系统
  7. springboot多数据源动态数据源(主从)
  8. 获取Java接口的所有实现类
  9. ISCSI 1-由零开始
  10. android studio 获取SHA1值 MD5值
  11. LintCode 600. 包裹黑色像素点的最小矩形(BFS)
  12. 怎么用python将日期转化为数字_python实现将中文日期转换为数字日期
  13. 2017 科技大事件回顾:智能音箱大战、数据泄露于内贼
  14. 基于python的性能测试工具_基于 Python 的性能测试工具 locust 与 LR 的简单对比[转发]...
  15. 如何合并两个excel表格数据
  16. Spring MVC 第一个HelloWorld程序
  17. java web实现第三方在线支付
  18. React Router 4 简介及其背后的路由哲学
  19. xp系统如何启用服务器服务,xp系统怎么样启用远程服务器
  20. Cisco服务器硬盘状态jbod,2018-11-06 JBOD模式下LSI9361RAID卡操作步骤

热门文章

  1. 在Mac上使用Nginx和FastCGI部署Flask应用
  2. (转)失败和拒绝,也是一种肯定
  3. 如何強迫 .Net 應用程式輸出英文的例外訊息
  4. python爬取正确但不出文件_python爬取糗事百科,该如何正确保存到本地文件夹?报错-问答-阿里云开发者社区-阿里云...
  5. android 相片裁剪空间,科学网—根据需要的空间范围对目标图层进行空间裁剪 - 孙露的博文...
  6. linux吃鸡游戏下载,沙雕糖豆人吃鸡战场
  7. 超级黑科技代码!Python打造电脑人脸屏幕解锁神器附带接头暗号
  8. 远程服务器如何传文件大小,linux服务器远程传文件大小
  9. 云服务器现安全漏洞及防护措施
  10. 开源Jekyll助您构建你的网站