您的位置:首页 > 编程语言 > MATLAB

Matlab 生物节律作图软件

2013-10-21 22:49 183 查看
%%基本值分配
startday=[1991 1 1];endday=[year(now) month(now) day(now)];
a=300;x1=0;x2=21; %a为作图中要划分的点数

%%基本框架
hf = figure('units','normalized','position',[0.2 0.3 0.7 0.5],...
'Resize','off','MenuBar','none',...
'NumberTitle','off','Name','生物节律作图软件 作者:代号4101');
ha = axes('Parent',hf,'xlim',[x1 x2],...
'units','normalized','position',[0.05 0.1 0.65 0.8],...
'NextPlot','add');
% set(ha,'ylim',[0 100]);  %如需固定y轴范围,请在该行左端代码取消注释

%%年月日提醒及输入
uicontrol(hf,'style','text','FontSize',12,...
'unit','normalized','position',[0.78 0.75 0.12 0.06],...
'String','请输入出生日期');
uicontrol(hf,'style','text','FontSize',12,...
'unit','normalized','position',[0.71 0.68 0.02 0.06],...
'String','年');
uicontrol(hf,'style','edit','FontSize',12,...
'String',num2str(startday(1)),...
'unit','normalized','position',[0.73 0.68 0.05 0.06],...
'callback','startday(1)=str2num(get(gcbo,''string''));');
uicontrol(hf,'style','text','FontSize',12,...
'unit','normalized','position',[0.8 0.68 0.02 0.06],...
'String','月');
uicontrol(hf,'style','edit','FontSize',12,...
'String',num2str(startday(2)),...
'unit','normalized','position',[0.82 0.68 0.05 0.06],...
'callback','startday(2)=str2num(get(gcbo,''string''));');
uicontrol(hf,'style','text','FontSize',12,...
'unit','normalized','position',[0.89 0.68 0.02 0.06],...
'String','日');
uicontrol(hf,'style','edit','FontSize',12,...
'String',num2str(startday(3)),...
'unit','normalized','position',[0.91 0.68 0.05 0.06],...
'callback','startday(3)=str2num(get(gcbo,''string''));');
uicontrol(hf,'style','text','FontSize',12,...
'unit','normalized','position',[0.78 0.6 0.12 0.06],...
'String','请输入查询日期');
uicontrol(hf,'style','text','FontSize',12,...
'unit','normalized','position',[0.71 0.53 0.02 0.06],...
'String','年');
uicontrol(hf,'style','edit','FontSize',12,...
'String',num2str(year(now)),...
'unit','normalized','position',[0.73 0.53 0.05 0.06],...
'callback','endday(1)=str2num(get(gcbo,''string''));');
uicontrol(hf,'style','text','FontSize',12,...
'unit','normalized','position',[0.8 0.53 0.02 0.06],...
'String','月');
uicontrol(hf,'style','edit','FontSize',12,...
'String',num2str(month(now)),...
'unit','normalized','position',[0.82 0.53 0.05 0.06],...
'callback','endday(2)=str2num(get(gcbo,''string''));');
uicontrol(hf,'style','text','FontSize',12,...
'unit','normalized','position',[0.89 0.53 0.02 0.06],...
'String','日');
uicontrol(hf,'style','edit','FontSize',12,...
'String',num2str(day(now)),...
'unit','normalized','position',[0.91 0.53 0.05 0.06],...
'callback','endday(3)=str2num(get(gcbo,''string''));')

%%横坐标范围
uicontrol(hf,'style','text','FontSize',12,...
'unit','normalized','position',[0.78 0.45 0.12 0.06],...
'String','设置横坐标范围');
uicontrol(hf,'style','text','FontSize',12,...
'unit','normalized','position',[0.74 0.38 0.02 0.06],...
'String','左');
uicontrol(hf,'style','edit','FontSize',12,...
'String',num2str(x1),...
'unit','normalized','position',[0.76 0.38 0.05 0.06],...
'callback','x1=str2num(get(gcbo,''string''));')
uicontrol(hf,'style','text','FontSize',12,...
'unit','normalized','position',[0.84 0.38 0.02 0.06],...
'String','右');
uicontrol(hf,'style','edit','FontSize',12,...
'String',num2str(x2),...
'unit','normalized','position',[0.86 0.38 0.05 0.06],...
'callback','x2=str2num(get(gcbo,''string''));')

%%体力、情绪、智力、clear按钮
grid on
uicontrol('Style','pushbutton',...
'BackgroundColor','r','FontSize',12,...
'Callback',['days=datenum(endday)-datenum(startday);','X = linspace(x1,x2,a);'...
'set(ha,''xlim'',[x1 x2]);',...
'for i=1:a;',...
'Y(i)=50*sin(2*pi*(days+X(i))/23)+50;',...
'end;','plot(X,Y,''Color'',''r'');','grid on'],...
'String','体力',...
'Units','normalized',...
'Position',[0.72 0.25 0.1 0.08]);
uicontrol('Style','pushbutton',...
'BackgroundColor','g','FontSize',12,...
'Callback',['days=datenum(endday)-datenum(startday);','X = linspace(x1,x2,a);'...
'set(ha,''xlim'',[x1 x2]);',...
'for i=1:a;',...
'Y(i)=50*sin(2*pi*(days+X(i))/28)+50;',...
'end;','plot(X,Y,''Color'',''g'');','grid on'],...
'String','情绪',...
'Units','normalized',...
'Position',[0.84 0.25 0.1 0.08]);
uicontrol('Style','pushbutton',...
'BackgroundColor','b','FontSize',12,...
'Callback',['days=datenum(endday)-datenum(startday);','X = linspace(x1,x2,a);'...
'set(ha,''xlim'',[x1 x2]);',...
'for i=1:a;',...
'Y(i)=50*sin(2*pi*(days+X(i))/33)+50;',...
'end;','plot(X,Y,''Color'',''b'');','grid on'],...
'String','智力',...
'Units','normalized',...
'Position',[0.72 0.15 0.1 0.08]);
uicontrol('Style','pushbutton','FontSize',12,...
'Callback','try,delete(allchild(ha));grid on;end',...
'String','clear',...
'Units','normalized',...
'Position',[0.84 0.15 0.1 0.08]);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: