Matlab中plot函数及legend函数详解

Matlab中plot函数及legend函数详解

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]';×3

Y1=rand(10,3)+1;×3

% 其中一个为向量,另一个为数组,自动匹配尺寸相等方向

X2=1:0.1:10;%1×91

Y2=[sin(X2);cos(X2)]';�×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)%标识符大小

legend函数的基本用法是

LEGEND(string1,string2,string3, ...)

分别将字符串1、字符串2、字符串3……标注到图中,每个字符串对应的图标为画图时的图标。

例如:

plot(x,sin(x),'.b',x,cos(x),'+r')

legend('sin','cos')这样可以把"."标识为'sin',把"+"标识为"cos"

还可以用LEGEND(...,'Location',LOC) 来指定图例标识框的位置

这些是Matlab help文件。后面一段是对应的翻译和说明

'North'              inside plot box near top
        'South'              inside bottom
        'East'               inside right
        'West'               inside left
        'NorthEast'          inside top right (default)
        'NorthWest           inside top left
        'SouthEast'          inside bottom right
        'SouthWest'          inside bottom left
        'NorthOutside'       outside plot box near top
        'SouthOutside'       outside bottom
        'EastOutside'        outside right
        'WestOutside'        outside left
        'NorthEastOutside'   outside top right
        'NorthWestOutside'   outside top left
        'SouthEastOutside'   outside bottom right
        'SouthWestOutside'   outside bottom left
        'Best'               least conflict with data in plot
        'BestOutside'        least unused space outside plot

'North'             图例标识放在图顶端
        'South'            图例标识放在图底端
        'East'               图例标识放在图右方
        'West'              图例标识放在图左方
        'NorthEast'       图例标识放在图右上方(默认)
        'NorthWest      图例标识放在图左上方
        'SouthEast'      图例标识放在图右下角
        'SouthWest'     图例标识放在图左下角
(以上几个都是将图例标识放在框图内)
        'NorthOutside'          图例标识放在图框外侧上方
        'SouthOutside'         图例标识放在图框外侧下方
        'EastOutside'           图例标识放在图框外侧右方
        'WestOutside'          图例标识放在图框外侧左方
        'NorthEastOutside'   图例标识放在图框外侧右上方
        'NorthWestOutside' 图例标识放在图框外侧左上方
        'SouthEastOutside'   图例标识放在图框外侧右下方
        'SouthWestOutside' 图例标识放在图框外侧左下方
(以上几个将图例标识放在框图外)
        'Best'                      图标标识放在图框内不与图冲突的最佳位置
        'BestOutside'           图标标识放在图框外使用最小空间的最佳位置 
还是用上面的例子

legend('sin','cos','location','northwest')可以将标识框放置在图的左上角。

Examples:
        x = 0:.2:12;
        plot(x,bessel(1,x),x,bessel(2,x),x,bessel(3,x));
        legend('First','Second','Third');
        legend('First','Second','Third','Location','NorthEastOutside')

b = bar(rand(10,5),'stacked'); colormap(summer); hold on
        x = plot(1:10,5*rand(10,1),'marker','square','markersize',12,...
                 'markeredgecolor','y','markerfacecolor',[.6 0 .6],...
                 'linestyle','-','color','r','linewidth',2); hold off
        legend([b,x],'Carrots','Peas','Peppers','Green Beans',...
                  'Cucumbers','Eggplant')

Matlab中plot函数及legend函数详解相关推荐

  1. Matlab中自带地图绘制WorldMap详解

    Matlab中自带地图绘制WorldMap详解 转载地址:http://blog.csdn.net/archielau/article/details/7933265,其实这些代码是在matlab中的 ...

  2. 矩阵在Matlab中应用规则,1.3 MATLAB中的矩阵运算免费阅读_详解MATLAB在最优化计算中的应用免费全文_百度阅读...

    4.6 线性规划问题的MATLAB求解方法 与一般的线性规划理论一样,在MATLAB中有线性规划的标准型,和前面介绍的一般标准型有类似之处,也有不同之处.在调用MATLAB线性规划函数linprog时 ...

  3. matlab中tr什么意思,tr命令详解

    tr是translate的简写,亦即翻译,但是遗憾的是,它不能翻译句子,只能翻译单个字符. 1 tr的工作原理是什么? 先记住一点,tr命令不接受指定的文件参数,而只是对标准输入进行翻译.好了,记住这 ...

  4. Matlab中画图以及plot函数及legend函数详解

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

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

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

  6. python scatter参数详解_Python中scatter函数参数及用法详解

    最近开始学习Python编程,遇到scatter函数,感觉里面的参数不知道什么意思于是查资料,最后总结如下: 1.scatter函数原型 2.其中散点的形状参数marker如下: 3.其中颜色参数c如 ...

  7. python scatter参数详解_Python 中 scatter 函数参数及用法详解

    Python 中 scatter 函数参数及用法详解 Python 中 scatter 函数参数及用法详解 这里有新鲜出炉的 Python 教程, 程序狗速度看过来! Python 编程语言 Pyth ...

  8. Matlab中print, fprint, fscanf, disp函数的用法

    最近一直在用python,导致学习的一些函数就有点混淆,趁着这会儿看代码,就再回顾下Matlab中print, fprint, fscanf, disp函数的用法 一.print() 函数可以把函数图 ...

  9. Matlab中用于数据预测spline()函数的使用

    Matlab中用于数据预测spline()函数的使用 ​ 再matlab中spline函数是利用三次方样条数据插值 语法 s = spline(x,y,xq) pp = spline(x,y) s = ...

最新文章

  1. SameNameFile 比较两个文件夹是否同名
  2. HDLBits答案(25)_编写Testbench
  3. Jakarta EE中的规范范围
  4. Unity 之命名规范(一)
  5. 解决mysql锁表终极方法
  6. 凸透镜成像实验软件_凸透镜成像6道例题(含详答)
  7. java课程心得_Java课程感想
  8. 计算机绘图课程选用课本,机械制图课程学习指南.doc
  9. iio Engine 1
  10. 印象笔记 for Mac(Evernote mac)
  11. 华为 eNSP 模拟器练习1
  12. 找回你的xournal++未保存文档
  13. 换行符不换行的原因与解决方法
  14. 齐博php百度编辑器上传图片_齐博CMS整合百度编辑器上传附件的BUG以及解决办法...
  15. 腾讯米大师接入Demo
  16. 三行代码写文本朗读脚本(断网可用,可用于查单词发音、文本朗诵)
  17. jinja2-过滤器
  18. Symbian数据库
  19. 汉仪字库与中国美术学院字体设计工作站正式建立
  20. Elasticsearch系列——使用kibana或postman操作Elasticsearch的常用命令(一)

热门文章

  1. java main函数_都知道Java程序的入口方法是main,那你知道为什么是main方法吗?
  2. centos ftp服务器搭建_CentOS系统云服务器宝塔面板安装以及微信小程序服务器搭建...
  3. TVS选型(车载电子产品篇)
  4. java下载zip_从Servlet Java下载zip
  5. 数据结构34:二叉树前序遍历、中序遍历和后序遍历
  6. Okhttp源码解析(三)——责任链
  7. CSS DIV 居中
  8. 4 谐波_技术文章—功率分析仪在IEC谐波的测试应用
  9. python函数调用追踪_Python函数调用追踪实现代码
  10. mysql 字符串不限长度,mysql中的字符串长度是否有限制?