线性图函数plot
例题1:
用均匀分布的随机函数,产生1行8列的向量,将该向量乘100后再沿零取整,得向量Y,求向量Y得线性图plot(Y)
Y=fix(100*rand(1,8))
Y =
81 90 12 91 63 9 27 54
>> plot(Y)
>> grid on %增加坐标格栅线
>> title('向量Y的线性图')
>> ylabel('向量Y的各元素值')
>> xlabel('向量Y的下标')
例题2:
已知反正切函数y=arctan x ,求其微分曲线并画出线性图
>> syms x
>> y=atan(x); %建立反正切符号表达式
>> y1=diff(y) %建立反正切函数的微分,diff为微分函数
y1 =
1/(x^2 + 1)
>> x=-5:0.1:5; %设置自变量x向量
>> y=eval(y); %执行反正切函数的计算
>> y1=1./(1+x.^2); %计算微分曲线的值
>> plot(x,y,'-',x,y1,'*') %绘制反正切函数及其微分曲线
>> grid on
>> title('反正切函数及其微分曲线')
>> xlabel('x坐标')
>> ylabel('y坐标')
>> legend('-atan,*diff curve') %设置图例
例题3
已知三角函数 y=tan (sin(x)) 及三角函数y1=sin(tan x) ,请绘出在区间[-Π,Π] 的y,y1的线性图
>> x=-pi:pi/10:pi;
>> y=tan(sin(x));
>> y1=sin(tan(x));
>> plot(x,y,'- -rs','linewidth',2,'markeredgecolor','k','markerfacecolor','g','markersize',10)
错误使用 plot
color/linetype 参数出错。
>> plot(x,y,'--rs','linewidth',2,'markeredgecolor','k','markerfacecolor','g','markersize',10) %绘制x,y的线性图,线型为红色虚线,设置线宽为2,标记点为方块,边缘线为黑色,设置标记表面为绿色,标记大小为10.
>> hold on %图形保持
>> plot(x,y1,'-ko','markeredgecolor','k','markerfacecolor','r','markersize',10)
>> xlabel('x-axes')
>> ylabel('y-axes')
例题4:
已知 y=sin(x) 绘制[0,2Π]的函数图,并求函数图的句柄值,通过set命令 改变线宽和颜色
>> x=0:pi/50:2*pi;
>> y=sin(x);
>> h=plot(x,y)
h =
Line (具有属性):
Color: [0 0.4470 0.7410]
LineStyle: '-'
LineWidth: 0.5000
Marker: 'none'
MarkerSize: 6
MarkerFaceColor: 'none'
XData: [1x101 double]
YData: [1x101 double]
ZData: [1x0 double]
显示 所有属性
>> set(h,'linewidth',8,'color','r') %red
>> grid on
>> set(h,'linewidth',8,'color','r')
>> set(h,'linewidth',8,'color','g') %green
>> set(h,'linewidth',8,'color','k') %黑色
>> set(h,'linewidth',8,'color','y') %yellow
>> set(h,'linewidth',8,'color','b') %blue
例题5,
已知一项单相电流、电压方程式如下,求功率曲线,并图解之。
L=sin t
V=2 sin (t+Π/3)
P=IV=2sin t sin (t+Π/3)
>> t= 0:pi/50:4*pi;
>> I=sin(t);
>> V=2*sin(t+pi/3);
>> P=I.*V;
>> plot(t,P,'-',t,I,'*',t,V,'+');
>> legend('- p','* I','+ V')
例题6. 分段函数:
已知u(t)=0,当 t<0;
u(t)=1,当 0<=t<2;
u(t)=0.2,当 t>=2.
求u(t)在[0,10]范围内的线性图
>> time=[0:0.02:10]'; % time=0:0.02:10;
>> u=1.0*(1+0*(time));
>> for i=min(find(time>=2.0)):length(u)
u(i)=0.2;
end
>> plot(time,u)
>> axis([0,10,0,1.2])