功能
二维曲线绘图
语法
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和DefaultAxesLineStyleOrde
set(0,'DefaultAxesColorOrder',’r|g|b|k’,...
'DefaultAxesLineStyleOrde r','-|-.|--|:')
使用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(…%返回所有曲线句柄
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文件。后面一段是对应的翻译和说明
(以上几个都是将图例标识放在框图内)
(以上几个将图例标识放在框图外)
还是用上面的例子
legend(‘sin’,’cos’,’location’,’northwest’)可以将标识框放置在图的左上角。
今天的文章Matlab中plot函数及legend函数详解分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/25257.html