matlab 的plot
扫描二维码
随时随地手机看文章
1. plot(x) 当x 为一向量时,以x 元素的值为纵坐标,x 的序号为横坐标值绘制曲线。当x 为一实矩阵时,则以其序号为横坐标,按列绘制每列元素值相对于其序号的曲线
例如:此处用
x=0:pi/20:2*pi;
y1=sin(x);
plot(x,y1);
2. 1, plot(x,y) 以x 元素为横坐标值,y 元素为纵坐标值绘制曲线。
2,plot(x,y1,x,y2,…)以公共的x 元素为横坐标值,以y1,y2,… 元素为纵坐标值绘制多条曲线。
x=0:pi/20:2*pi;
y1=sin(x);
y2=cos(x);
plot(x,y1,x,y2);
3. 可以在画的图像中添加栅格,用命令grid on,这样可以方便你对齐某条线或是对比比较方便,看下图可以上图对比,看下有什么不同,测试代码如下:
x=0:pi/20:2*pi;
y1=sin(x);
y2=cos(x);
plot(x,y1,x,y2);
grid on
4. 添加坐标轴信息,这样做可以很快的让人明白你在做什么,测试代码如下
x=0:pi/20:2*pi;
y1=sin(x);
y2=cos(x);
plot(x,y1,x,y2);
grid on
xlabel('变量 X')
ylabel('变量 Y1 & Y2')
5. 除了坐标轴信息外还可以添加其它的信息,如所画曲线的信息等:测试代码如下
x=0:pi/20:2*pi;
y1=sin(x);
y2=cos(x);
plot(x,y1,x,y2);
grid on
xlabel('变量 X')
ylabel('变量 Y1 & Y2')
title('正弦余弦波形') %添加图像标题
text(1.5,0.3,'cos(x)') %将cosx这个注解加到坐标中的某个位置
gtext('sin(x)') % 用鼠标的光标定位,将sinx这个注解放在你鼠标点击的地方
功能
二维曲线绘图
语法
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轴离散的点。
plot(X1,Y1,LineSpec,…)通过参数LineSpec指定曲线的曲线属性,它包括线型、标记符和颜色。plot函数支持同时绘制任意组图形
plot(X1,Y1,LineSpec1,X2,Y2,LineSpec2,…)
此时完全等效于
plot(X1,Y1,LineSpec1,…)
hlod all
plot(X2,Y2,LineSpec2,…)
MATLAB中提供的线型属性有:
需要说明的是,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’,’-|-.|–|:’)
使用holdall命令可以阻止调用plot函数时自动重置ColorOrder和LineStyleOrder属性,而是循环使用。注意hold on只是使多次绘制的图形叠加(相当于NextPlot),但不能阻止属性重置。
另外我们可以通过下面四个属性设置标识符的颜色和大小
LineWidth——指定线宽
MarkerEdgeColor——指定标识符的边缘颜色
MarkerFaceColor——指定标识符填充颜色
MarkerSize——指定标识符的大小
注意上面四个属性是针对当前坐标系中所有曲线的
实例
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)%标识符大小