hfig=figure('visible','off')
set(hfig,'NumberTitle','off')
set(hfig,'name','My Clock')
set(hfig,'MenuBar','none')
set(hfig,'color',[0.5 0.7 0.3])
set(hfig,'visible','on')
A=linspace(0,6.3,1000)
x1=8*cos(A)
y1=8*sin(A)
x2=7*cos(A)
y2=7*sin(A)
plot(x1,y1,'b','linewidth',1.4)
hold on
plot(x2,y2,'b','linewidth',3.5)
fill(0.4*cos(A),0.4*sin(A),'燃衡r')
axis off
axis([-10 10 -10 10])
axis equal
set(gca,'position',[0.13 0.05 0.775 0.815])
title(date,'fontsize',18)
for k=1:12
xk=9*cos(-2*pi/12*k+pi/2)
yk=9*sin(-2*pi/12*k+pi/2)
plot([xk/9*8 xk/9*7],[yk/9*8 yk/9*7],'color',[0.3 0.8 0.9])
h=text(xk,yk,num2str(k),'fontsize',16,'color',...
[0.9 0.3 0.8],'HorizontalAlignment','center')
end
% 计算时针位置
ti=clock
th=-(ti(4)+ti(5)/60+ti(6)/3600)/12*2*pi+pi/2
xh3=4.0*cos(th)
yh3=4.0*sin(th)
xh2=xh3/2+0.5*cos(th-pi/2)
yh2=yh3/2+0.5*sin(th-pi/2)
xh4=xh3/2-0.5*cos(th-pi/2)
yh4=yh3/2-0.5*sin(th-pi/2)
hh=fill([0 xh2 xh3 xh4 0],[0 yh2 yh3 yh4 0],[0.6 0.5 0.3])
% 计算分针位置
tm=-(ti(5)+ti(6)/60)/60*2*pi+pi/2
xm3=6.0*cos(tm)
ym3=6.0*sin(tm)
xm2=xm3/2+0.5*cos(tm-pi/2)
ym2=ym3/2+0.5*sin(tm-pi/2)
xm4=xm3/2-0.5*cos(tm-pi/2)
ym4=ym3/2-0.5*sin(tm-pi/2)
hm=fill([0 xm2 xm3 xm4 0],[0 ym2 ym3 ym4 0],[0.6 0.5 0.3])
% 计算秒针位置
ts=-(ti(6))/60*2*pi+pi/2
hs=plot([0 7*cos(ts)],[0 7*sin(ts)],...
'color',[0.6 0.5 0.3],'linewidth',3)
set(gcf,'doublebuffer','on')
k=1
while k<6
ti=clock
% 计算时针位置
th=-(ti(4)+ti(5)/60+ti(6)/3600)/12*2*pi+pi/晌弯2
xh3=4.0*cos(th)
yh3=4.0*sin(th)
xh2=xh3/2+0.5*cos(th-pi/2)
yh2=yh3/2+0.5*sin(th-pi/2)
xh4=xh3/2-0.5*cos(th-pi/2)
yh4=yh3/2-0.5*sin(th-pi/2)
set(hh,'XData',[0 xh2 xh3 xh4 0],'YData',[0 yh2 yh3 yh4 0])
% 计算分针位置
tm=-(ti(5)+ti(6)/60)/60*2*pi+pi/2
xm3=6.0*cos(tm)
ym3=6.0*sin(tm)
xm2=xm3/2+0.5*cos(tm-pi/2)
ym2=ym3/2+0.5*sin(tm-pi/2)
xm4=xm3/2-0.5*cos(tm-pi/2)
ym4=ym3/2-0.5*sin(tm-pi/2)
set(hm,'XData',[0 xm2 xm3 xm4 0],'YData',[0 ym2 ym3 ym4 0])
% 计算秒针位置
ts=-(ti(6))/60*2*pi+pi/2
set(hs,'XData',[0 7*cos(ts)],'YData',[0 7*sin(ts)])
drawnow
pause(0.09)
end
时钟2:(第二个程序)
% clfshg
h=figure('menubar','none',...
'color','white',...
'position',[200 200 320 360],...
'name','CLOCK')
e1=uicontrol('parent',h,...%定义一个edit控件,用于存储日期
'style','edit',... %该控件的类型为edit,可以编辑其内容
'fontsize',12,... %字体大小为12
'position',[110 20 120 30])%位置,距离左边110,距离底边20,宽度为120,高度为30
b1=uicontrol('parent',h,...%定义一个text控件,显示刻度“12”
'style','text',...
'string','12',...
'fontsize',12,...
'position',[156 275 20 20])
b2=uicontrol('parent',h,...%定义一个text控件,显示刻度“9”
'style','text',...
'string','9',...
'fontsize',12,...
'position',[60 175 20 20])
b3=uicontrol('parent',h,...%定义一个text控件,显示刻度“6”
'style','text',...
'string','6',...
'fontsize',12,...
'position',[156 75 20 20])
b4=uicontrol('parent',h,...%定义一个text控件,显示刻度“3”
'style','text',...
'string','3',...
'fontsize',12,...
'position',[260 175 20 20])
s1=[0:pi/1000:2*pi]
hl=plot(cos(s1),sin(s1),'b-')%绘制表盘的外圆
time=datestr(now) %得到当前时间
set(e1,'string',time(1:11)) %当前时间的1:11位是日期,把日期值给el
sita1=pi/2-str2num(time(19:20))*pi/30 %秒针转过的角度
sita2=pi/2-str2num(time(16:17))*pi/30+sita1/60 %分针转过的角度
sita3=pi/2-str2num(time(13:14))*pi/6+sita2/12 %时针转过的角度
w1=-pi/30%设置秒针每秒转过的角度,分针走一个半圆需要30s
w2=-pi/1800%设置分针每秒转过的角度
w3=-pi/108000%设置时针每秒转过的角度
pausetime=1
axis offaxis equal
hold on
plot(0,0,'or')
%设置刻度
for n=pi*2:-pi/30:pi/30 %绘制表盘,绘制分钟的刻度
a1=0.95*cos(n):0.05*cos(n)/2:cos(n)b1=0.95*sin(n):0.05*sin(n)/2:sin(n)
plot(a1,b1,'r-')
end
for n=pi*2:-pi/6:pi/30%绘制表盘,绘制小时的刻度
a1=0.9*cos(n):0.1*cos(n)/2:cos(n)b1=0.9*sin(n):0.1*sin(n)/2:sin(n)
plot(a1,b1,'r-')
end
%时钟指针
while 1
x1=0:0.75*cos(sita1)/2:0.75*cos(sita1)y1=0:0.75*sin(sita1)/2:0.75*sin(sita1) %根据秒针的位置绘制分针
x2=0:0.6*cos(sita2)/2:0.6*cos(sita2)y2=0:0.6*sin(sita2)/2:0.6*sin(sita2) %根据分针的位置绘制分针
x3=0:0.45*cos(sita3)/2:0.45*cos(sita3)y3=0:0.45*sin(sita3)/2:0.45*sin(sita3) %根据时针的位置绘制分针
hp1=plot(x1,y1,'b-')
hp2=plot(x2,y2,'b-','linewidth',2)
hp3=plot(x3,y3,'g-','linewidth',2)
sita1=sita1+w1*pausetime %计算一秒以后秒针的角度位置
sita2=sita2+w2*pausetime %计算一秒以后分针的角度位置
sita3=sita3+w3*pausetime %计算一秒以后时针的角度位置
pause(pausetime)
delete(hp1)
delete(hp2)
delete(hp3)
end
hold off
我最近也学了一点,主要是用于BP网络上面的编程,这里有个例子你先看看!X
=
[0
1
0
1]
clusters
=
5
points
=
10
std_dev
=
0.05
P
=
nngenc(X,clusters,points,std_dev)
plot(P(1,:),P(2,:),'轮者+r')
title('输入样本向量')
xlabel('搭旅p(1)')
ylabel('p(2)')
%建立网络腊枝薯
net=newc([0
10
1],5,0.1)
%得到网络权值,并在图上绘出
figure
plot(P(1,:),P(2,:),'+r')
w=net.iw{1}
hold
on
plot(w(:,1),w(:,2),'ob')
hold
off
title('输入样本向量及初始权值')
xlabel('p(1)')
ylabel('p(2)')
figure
plot(P(1,:),P(2,:),'+r')
hold
on
%训练网络
net.trainParam.epochs=7
net=init(net)
net=train(net,P)
%得到训练后的网络权值,并在图上绘出
w=net.iw{1}
plot(w(:,1),w(:,2),'ob')
hold
off
title('输入样本向量及更新后的权值')
xlabel('p(1)')
ylabel('p(2)')
a=0
p
=
[0.6
0.8]
a=sim(net,p)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)