在matlab中描绘简单曲线和点 - dannyboy

在matlab中描绘简单曲线和点

在MATLAB描绘y=exp(-2*t).*sin(3*t),并标出最大值点坐标

clear %清除内存中的所有变量

a=2; %设置衰减系数

w=3; %设置振荡频率

t=0:0.01:10; %取自变量采样数组

y=exp(-a*t).*sin(w*t); %计算函数值,产生函数数组

[y_max,i_max]=max(y); %找最大值元素位置

t_text=[\'t=\',num2str(t(i_max))]; %生成最大值点的横坐标字符串 <7>

y_text=[\'y=\',num2str(y_max)]; %生成最大值点的纵坐标字符串 <8>

max_text=char(\'maximum\',t_text,y_text);%生成标志最大值点的字符串 <9>

%生成标志图名用的字符串

tit=[\'y=exp(-\',num2str(a),\'t)*sin(\',num2str(w),\'t)\']; %<11>

plot(t,zeros(size(t)),\'k\') %画纵坐标为0的基准线

hold on %保持绘制的线不被清除

plot(t,y,\'b\') %用兰色画y(t)曲线

plot(t(i_max),y_max,\'r.\',\'MarkerSize\',20) %用大红点标最大值点

text(t(i_max)+0.3,y_max+0.05,max_text) %在图上书写最大值点的数据值<16>

title(tit),xlabel(\'t\'),ylabel(\'y\'),hold off%书写图名、横坐标名、纵坐标名

发表于 2009-11-03 10:46 dannyboy 阅读(846) 评论(0) 编辑收藏举报