中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » 网络日志(Blog) » [plp626]MATLAB 学习笔记
作者:
标题: [plp626]MATLAB 学习笔记 上一主题 | 下一主题
plp626
银牌会员

钻石会员


积分 2278
发帖 1020
注册 2007-11-19
状态 离线
『楼 主』:  [plp626]MATLAB 学习笔记

matlab应用程序100例
1-32是:图形应用篇

33-66是:界面设计篇

67-84是:图形处理篇

85-100是:数值分析篇

---------------------------------------------------------------

实例1:三角函数曲线(1)

function shili01
h0=figure('toolbar','none',...
    'position',[198 56 350 300],...
    'name','实例01');
h1=axes('parent',h0,...
   'visible','off');
x=-pi:0.05:pi;
y=sin(x);
plot(x,y);
xlabel('自变量X');
ylabel('函数值Y');
title('SIN( )函数曲线');
grid on

实例2:三角函数曲线(2)

function shili02
h0=figure('toolbar','none',...
    'position',[200 150 450 350],...
    'name','实例02');
x=-pi:0.05:pi;
y=sin(x)+cos(x);
plot(x,y,'-*r','linewidth',1);
grid on
xlabel('自变量X');
ylabel('函数值Y');
title('三角函数');
实例3:图形的叠加

function shili03
h0=figure('toolbar','none',...
    'position',[200 150 450 350],...
    'name','实例03');
x=-pi:0.05:pi;
y1=sin(x);
y2=cos(x);
plot(x,y1,...
    '-*r',...
    x,y2,...
    '--og');
grid on
xlabel('自变量X');
ylabel('函数值Y');
title('三角函数');
实例4:双y轴图形的绘制

function shili04
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例04');
x=0:900;a=1000;b=0.005;
y1=2*x;
y2=cos(b*x);
[haxes,hline1,hline2]=plotyy(x,y1,x,y2,'semilogy','plot');
axes(haxes(1))
ylabel('semilog plot');
axes(haxes(2))
ylabel('linear plot');
实例5:单个轴窗口显示多个图形

function shili05
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例05');
t=0:pi/10:2*pi;
[x,y]=meshgrid(t);
subplot(2,2,1)
plot(sin(t),cos(t))
axis equal

subplot(2,2,2)
z=sin(x)-cos(y);
plot(t,z)
axis([0 2*pi -2 2])

subplot(2,2,3)
h=sin(x)+cos(y);
plot(t,h)
axis([0 2*pi -2 2])

subplot(2,2,4)
g=(sin(x).^2)-(cos(y).^2);
plot(t,g)
axis([0 2*pi -1 1])
实例6:图形标注

function shili06
h0=figure('toolbar','none',...
    'position',[200 150 450 400],...
    'name','实例06');
t=0:pi/10:2*pi;
h=plot(t,sin(t));
xlabel('t=0到2\pi','fontsize',16);
ylabel('sin(t)','fontsize',16);
title('\it{从 0to2\pi 的正弦曲线}','fontsize',16)
x=get(h,'xdata');
y=get(h,'ydata');
imin=find(min(y)==y);
imax=find(max(y)==y);
text(x(imin),y(imin),...
    ['\leftarrow最小值=',num2str(y(imin))],...
    'fontsize',16)
text(x(imax),y(imax),...
    ['\leftarrow最大值=',num2str(y(imax))],...
    'fontsize',16)
   
实例7:条形图形

function shili07
h0=figure('toolbar','none',...
    'position',[200 150 450 350],...
    'name','实例07');
tiao1=[562 548 224 545 41 445 745 512];
tiao2=[47 48 57 58 54 52 65 48];
t=0:7;
bar(t,tiao1)
xlabel('X轴');
ylabel('TIAO1值');
h1=gca;
h2=axes('position',get(h1,'position'));
plot(t,tiao2,'linewidth',3)
set(h2,'yaxislocation','right','color','none','xticklabel',[])
实例8:区域图形

function shili08
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例08');
x=91:95;
profits1=[88 75 84 93 77];
profits2=[51 64 54 56 68];
profits3=[42 54 34 25 24];
profits4=[26 38 18 15 4];
area(x,profits1,'facecolor',[0.5 0.9 0.6],...
    'edgecolor','b',...
    'linewidth',3)
hold on
area(x,profits2,'facecolor',[0.9 0.85 0.7],...
    'edgecolor','y',...
    'linewidth',3)
hold on
area(x,profits3,'facecolor',[0.3 0.6 0.7],...
    'edgecolor','r',...
    'linewidth',3)
hold on
area(x,profits4,'facecolor',[0.6 0.5 0.9],...
    'edgecolor','m',...
    'linewidth',3)
hold off
set(gca,'xtick',[91:95])
set(gca,'layer','top')
gtext('\leftarrow第一季度销量')
gtext('\leftarrow第二季度销量')
gtext('\leftarrow第三季度销量')
gtext('\leftarrow第四季度销量')
xlabel('年','fontsize',16);
ylabel('销售量','fontsize',16);
实例9:饼图的绘制

function shili09
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例09');
t=[54 21 35;
    68 54 35;
    45 25 12;
    48 68 45;
    68 54 69];
x=sum(t);
h=pie(x);
textobjs=findobj(h,'type','text');
str1=get(textobjs,{'string'});
val1=get(textobjs,{'extent'});
oldext=cat(1,val1{:});
names={'商品一:';'商品二:';'商品三:'};
str2=strcat(names,str1);
set(textobjs,{'string'},str2)
val2=get(textobjs,{'extent'});
newext=cat(1,val2{:});
offset=sign(oldext(:,1)).*(newext(:,3)-oldext(:,3))/2;
pos=get(textobjs,{'position'});
textpos=cat(1,pos{:});
textpos(:,1)=textpos(:,1)+offset;
set(textobjs,{'position'},num2cell(textpos,[3,2]))
实例10:阶梯图

function shili10
h0=figure('toolbar','none',...
    'position',[200 150 450 400],...
    'name','实例10');
a=0.01;
b=0.5;
t=0:10;
f=exp(-a*t).*sin(b*t);
stairs(t,f)
hold on
plot(t,f,':*')
hold off
glabel='函数e^{-(\alpha*t)}sin\beta*t的阶梯图';
gtext(glabel,'fontsize',16)
xlabel('t=0:10','fontsize',16)
axis([0 10 -1.2 1.2])
实例11:枝干图

function shili11
h0=figure('toolbar','none',...
    'position',[200 150 450 350],...
    'name','实例11');
x=0:pi/20:2*pi;
y1=sin(x);
y2=cos(x);
h1=stem(x,y1+y2);
hold on
h2=plot(x,y1,'^r',x,y2,'*g');
hold off
h3=[h1(1);h2];
legend(h3,'y1+y2','y1=sin(x)','y2=cos(x)')
xlabel('自变量X');
ylabel('函数值Y');
title('正弦函数与余弦函数的线性组合');
实例12:罗盘图

function shili12
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例12');
winddirection=[54 24 65 84
    256 12 235 62
    125 324 34 254];
windpower=[2 5 5 3
    6 8 12 7
    6 14 10 8];
rdirection=winddirection*pi/180;
[x,y]=pol2cart(rdirection,windpower);
compass(x,y);
desc={'风向和风力',
    '北京气象台',
    '10月1日0:00到',
    '10月1日12:00'};
gtext(desc)
实例13:轮廓图

function shili13
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例13');
[th,r]=meshgrid((0:10:360)*pi/180,0:0.05:1);
[x,y]=pol2cart(th,r);
z=x+i*y;
f=(z.^4-1).^(0.25);
contour(x,y,abs(f),20)
axis equal
xlabel('实部','fontsize',16);
ylabel('虚部','fontsize',16);
h=polar([0 2*pi],[0 1]);
delete(h)
hold on
contour(x,y,abs(f),20)
实例14:交互式图形

function shili14
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例14');
axis([0 10 0 10]);
hold on
x=[];
y=[];
n=0;
disp('单击鼠标左键点取需要的点');
disp('单击鼠标右键点取最后一个点');
but=1;
while but==1
    [xi,yi,but]=ginput(1);
    plot(xi,yi,'bo')
    n=n+1;
    disp('单击鼠标左键点取下一个点');
    x(n,1)=xi;
    y(n,1)=yi;
end
t=1:n;
ts=1:0.1:n;
xs=spline(t,x,ts);
ys=spline(t,y,ts);
plot(xs,ys,'r-');
hold off
实例14:交互式图形

function shili14
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例14');
axis([0 10 0 10]);
hold on
x=[];
y=[];
n=0;
disp('单击鼠标左键点取需要的点');
disp('单击鼠标右键点取最后一个点');
but=1;
while but==1
    [xi,yi,but]=ginput(1);
    plot(xi,yi,'bo')
    n=n+1;
    disp('单击鼠标左键点取下一个点');
    x(n,1)=xi;
    y(n,1)=yi;
end
t=1:n;
ts=1:0.1:n;
xs=spline(t,x,ts);
ys=spline(t,y,ts);
plot(xs,ys,'r-');
hold off
实例15:变换的傅立叶函数曲线

function shili15
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例15');
axis equal
m=moviein(20,gcf);
set(gca,'nextplot','replacechildren')
h=uicontrol('style','slider','position',...
    [100 10 500 20],'min',1,'max',20)
for j=1:20
    plot(fft(eye(j+16)))
    set(h,'value',j)
    m(:,j)=getframe(gcf);
end
clf;
axes('position',[0 0 1 1]);
movie(m,30)
实例16:劳伦兹非线形方程的无序活动

function shili15
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例15');
axis equal
m=moviein(20,gcf);
set(gca,'nextplot','replacechildren')
h=uicontrol('style','slider','position',...
    [100 10 500 20],'min',1,'max',20)
for j=1:20
    plot(fft(eye(j+16)))
    set(h,'value',j)
    m(:,j)=getframe(gcf);
end
clf;
axes('position',[0 0 1 1]);
movie(m,30)
实例17:填充图

function shili17
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例17');
t=(1:2:15)*pi/8;
x=sin(t);
y=cos(t);
fill(x,y,'r')
axis square off
text(0,0,'STOP',...
    'color',[1 1 1],...
    'fontsize',50,...
    'horizontalalignment','center')
例18:条形图和阶梯形图

function shili18
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例18');
subplot(2,2,1)
x=-3:0.2:3;
y=exp(-x.*x);
bar(x,y)
title('2-D Bar Chart')

subplot(2,2,2)
x=-3:0.2:3;
y=exp(-x.*x);
bar3(x,y,'r')
title('3-D Bar Chart')

subplot(2,2,3)
x=-3:0.2:3;
y=exp(-x.*x);
stairs(x,y)
title('Stair Chart')

subplot(2,2,4)
x=-3:0.2:3;
y=exp(-x.*x);
barh(x,y)
title('Horizontal Bar Chart')
实例19:三维曲线图

function shili19
h0=figure('toolbar','none',...
    'position',[200 150 450 400],...
    'name','实例19');
subplot(2,1,1)
x=linspace(0,2*pi);
y1=sin(x);
y2=cos(x);
y3=sin(x)+cos(x);
z1=zeros(size(x));
z2=0.5*z1;
z3=z1;
plot3(x,y1,z1,x,y2,z2,x,y3,z3)
grid on
xlabel('X轴');
ylabel('Y轴');
zlabel('Z轴');
title('Figure1:3-D Plot')

subplot(2,1,2)
x=linspace(0,2*pi);
y1=sin(x);
y2=cos(x);
y3=sin(x)+cos(x);
z1=zeros(size(x));
z2=0.5*z1;
z3=z1;
plot3(x,z1,y1,x,z2,y2,x,z3,y3)
grid on
xlabel('X轴');
ylabel('Y轴');
zlabel('Z轴');
title('Figure2:3-D Plot')
实例20:图形的隐藏属性

function shili20
h0=figure('toolbar','none',...
    'position',[200 150 450 300],...
    'name','实例20');
subplot(1,2,1)
[x,y,z]=sphere(10);
mesh(x,y,z)
axis off
title('Figure1:Opaque')
hidden on

subplot(1,2,2)
[x,y,z]=sphere(10);
mesh(x,y,z)
axis off
title('Figure2:Transparent')
hidden off
实例21PEAKS函数曲线

function shili21
h0=figure('toolbar','none',...
    'position',[200 100 450 450],...
    'name','实例21');
[x,y,z]=peaks(30);
subplot(2,1,1)
x=x(1,:);
y=y(:,1);
i=find(y>0.8&y<1.2);
j=find(x>-0.6&x<0.5);
z(i,j)=nan*z(i,j);
surfc(x,y,z)
xlabel('X轴');
ylabel('Y轴');
zlabel('Z轴');
title('Figure1:surfc函数形成的曲面')

subplot(2,1,2)
x=x(1,:);
y=y(:,1);
i=find(y>0.8&y<1.2);
j=find(x>-0.6&x<0.5);
z(i,j)=nan*z(i,j);
surfl(x,y,z)
xlabel('X轴');
ylabel('Y轴');
zlabel('Z轴');
title('Figure2:surfl函数形成的曲面')
实例22:片状图

function shili22
h0=figure('toolbar','none',...
    'position',[200 150 550 350],...
    'name','实例22');
subplot(1,2,1)
x=rand(1,20);
y=rand(1,20);
z=peaks(x,y*pi);
t=delaunay(x,y);
trimesh(t,x,y,z)
hidden off
title('Figure1:Triangular Surface Plot');

subplot(1,2,2)
x=rand(1,20);
y=rand(1,20);
z=peaks(x,y*pi);
t=delaunay(x,y);
trisurf(t,x,y,z)
title('Figure1:Triangular Surface Plot');
实例23:视角的调整

function shili23
h0=figure('toolbar','none',...
    'position',[200 150 450 350],...
    'name','实例23');
x=-5:0.5:5;
[x,y]=meshgrid(x);
r=sqrt(x.^2+y.^2)+eps;
z=sin(r)./r;
subplot(2,2,1)
surf(x,y,z)
xlabel('X-axis')
ylabel('Y-axis')
zlabel('Z-axis')
title('Figure1')
view(-37.5,30)

subplot(2,2,2)
surf(x,y,z)
xlabel('X-axis')
ylabel('Y-axis')
zlabel('Z-axis')
title('Figure2')
view(-37.5+90,30)

subplot(2,2,3)
surf(x,y,z)
xlabel('X-axis')
ylabel('Y-axis')
zlabel('Z-axis')
title('Figure3')
view(-37.5,60)

subplot(2,2,4)
surf(x,y,z)
xlabel('X-axis')
ylabel('Y-axis')
zlabel('Z-axis')
title('Figure4')
view(180,0)
实例24:向量场的绘制

function shili24
h0=figure('toolbar','none',...
    'position',[200 150 450 350],...
    'name','实例24');
subplot(2,2,1)
z=peaks;
ribbon(z)
title('Figure1')

subplot(2,2,2)
[x,y,z]=peaks(15);
[dx,dy]=gradient(z,0.5,0.5);
contour(x,y,z,10)
hold on
quiver(x,y,dx,dy)
hold off
title('Figure2')

subplot(2,2,3)
[x,y,z]=peaks(15);
[nx,ny,nz]=surfnorm(x,y,z);
surf(x,y,z)
hold on
quiver3(x,y,z,nx,ny,nz)
hold off
title('Figure3')

subplot(2,2,4)
x=rand(3,5);
y=rand(3,5);
z=rand(3,5);
c=rand(3,5);
fill3(x,y,z,c)
grid on
title('Figure4')
实例25:灯光定位

function shili25
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例25');
vert=[1 1 1;1 2 1;
    2 2 1;2 1 1;
    1 1 2;1 2 2;
    2 2 2;2 1 2];
fac=[1 2 3 4;2 6 7 3;
    4 3 7 8;1 5 8 4;
    1 2 6 5;5 6 7 8];
grid off
sphere(36)
h=findobj('type','surface');
set(h,'facelighting','phong',...
    'facecolor',...
    'interp',...
    'edgecolor',[0.4 0.4 0.4],...
    'backfacelighting',...
    'lit')
hold on
patch('faces',fac,'vertices',vert,...
    'facecolor','y');
light('position',[1 3 2]);
light('position',[-3 -1 3]);
material shiny
axis vis3d off
hold off
实例26:柱状图

function shili26
h0=figure('toolbar','none',...
    'position',[200 50 450 450],...
    'name','实例26');
subplot(2,1,1)
x=[5 2 1
    8 7 3
    9 8 6
    5 5 5
    4 3 2];
bar(x)
xlabel('X轴');
ylabel('Y轴');
title('第一子图');

subplot(2,1,2)
y=[5 2 1
    8 7 3
    9 8 6
    5 5 5
    4 3 2];
barh(y)
xlabel('X轴');
ylabel('Y轴');
title('第二子图');
实例27:设置照明方式

function shili27
h0=figure('toolbar','none',...
    'position',[200 150 450 350],...
    'name','实例27');
subplot(2,2,1)
sphere
shading flat
camlight left
camlight right
lighting flat
colorbar
axis off
title('Figure1')

subplot(2,2,2)
sphere
shading flat
camlight left
camlight right
lighting gouraud
colorbar
axis off
title('Figure2')

subplot(2,2,3)
sphere
shading interp
camlight right
camlight left
lighting phong
colorbar
axis off
title('Figure3')

subplot(2,2,4)
sphere
shading flat
camlight left
camlight right
lighting none
colorbar
axis off
title('Figure4')
实例28:羽状图

function shili28
h0=figure('toolbar','none',...
    'position',[200 150 450 350],...
    'name','实例28');
subplot(2,1,1)
alpha=90:-10:0;
r=ones(size(alpha));
m=alpha*pi/180;
n=r*10;
[u,v]=pol2cart(m,n);
feather(u,v)
title('羽状图')
axis([0 20 0 10])

subplot(2,1,2)
t=0:0.5:10;
x=0.05+i;
y=exp(-x*t);
feather(y)
title('复数矩阵的羽状图')
实例29:立体透视(1)

function shili29
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例29');
[x,y,z]=meshgrid(-2:0.1:2,...
    -2:0.1:2,...
    -2:0.1:2);
v=x.*exp(-x.^2-y.^2-z.^2);
grid on
for i=-2:0.5:2;
    h1=surf(linspace(-2,2,20),...
        linspace(-2,2,20),...
        zeros(20)+i);
    rotate(h1,[1 -1 1],30)
    dx=get(h1,'xdata');
    dy=get(h1,'ydata');
    dz=get(h1,'zdata');
    delete(h1)
    slice(x,y,z,v,[-2 2],2,-2)
    hold on
    slice(x,y,z,v,dx,dy,dz)
    hold off
    axis tight
    view(-5,10)
    drawnow
end
实例30:立体透视(2)

function shili30
h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例30');
[x,y,z]=meshgrid(-2:0.1:2,...
    -2:0.1:2,...
    -2:0.1:2);
v=x.*exp(-x.^2-y.^2-z.^2);
[dx,dy,dz]=cylinder;
slice(x,y,z,v,[-2 2],2,-2)
for i=-2:0.2:2
    h=surface(dx+i,dy,dz);
    rotate(h,[1 0 0],90)
    xp=get(h,'xdata');
    yp=get(h,'ydata');
    zp=get(h,'zdata');
    delete(h)
    hold on
    hs=slice(x,y,z,v,xp,yp,zp);
    axis tight
    xlim([-3 3])
    view(-10,35)
    drawnow
    delete(hs)
    hold off
end
实例31:表面图形

function shili31
h0=figure('toolbar','none',...
    'position',[200 150 550 250],...
    'name','实例31');
subplot(1,2,1)
x=rand(100,1)*16-8;
y=rand(100,1)*16-8;
r=sqrt(x.^2+y.^2)+eps;
z=sin(r)./r;
xlin=linspace(min(x),max(x),33);
ylin=linspace(min(y),max(y),33);
[X,Y]=meshgrid(xlin,ylin);
Z=griddata(x,y,z,X,Y,'cubic');
mesh(X,Y,Z)
axis tight
hold on
plot3(x,y,z,'.','Markersize',20)

subplot(1,2,2)
k=5;
n=2^k-1;
theta=pi*(-n:2:n)/n;
phi=(pi/2)*(-n:2:n)'/n;
X=cos(phi)*cos(theta);
Y=cos(phi)*sin(theta);
Z=sin(phi)*ones(size(theta));
colormap([0 0 0;1 1 1])
C=hadamard(2^k);
surf(X,Y,Z,C)
axis square
实例32:沿曲线移动的小球

h0=figure('toolbar','none',...
    'position',[198 56 408 468],...
    'name','实例32');
h1=axes('parent',h0,...
    'position',[0.15 0.45 0.7 0.5],...
    'visible','on');
t=0:pi/24:4*pi;
y=sin(t);
plot(t,y,'b')
n=length(t);
h=line('color',[0 0.5 0.5],...
    'linestyle','.',...
    'markersize',25,...
    'erasemode','xor');
k1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'position',[80 100 50 30],...
    'string','开始',...
    'callback',[...
        'i=1;',...
        'k=1;,',...
        'm=0;,',...
        'while 1,',...
        'if k==0,',...
        'break,',...
        'end,',...
        'if k~=0,',...
        'set(h,''xdata'',t(i),''ydata'',y(i)),',...
        'drawnow;,',...
        'i=i+1;,',...
        'if i>n,',...
        'm=m+1;,',...
        'i=1;,',...
        'end,',...
        'end,',...
        'end']);
k2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'position',[180 100 50 30],...
    'string','停止',...
    'callback',[...
        'k=0;,',...
        'set(e1,''string'',m),',...
        'p=get(h,''xdata'');,',...
        'q=get(h,''ydata'');,',...        
        'set(e2,''string'',p);,',...
        'set(e3,''string'',q)']);
k3=uicontrol('parent',h0,...
    'style','pushbutton',...
    'position',[280 100 50 30],...
    'string','关闭',...
    'callback','close');
e1=uicontrol('parent',h0,...
    'style','edit',...
    'position',[60 30 60 20]);
t1=uicontrol('parent',h0,...
    'style','text',...
    'string','循环次数',...
    'position',[60 50 60 20]);
e2=uicontrol('parent',h0,...
    'style','edit',...
    'position',[180 30 50 20]);
t2=uicontrol('parent',h0,...
    'style','text',...
    'string','终点的X坐标值',...
    'position',[155 50 100 20]);
e3=uicontrol('parent',h0,...
    'style','edit',...
    'position',[300 30 50 20]);
t3=uicontrol('parent',h0,...
    'style','text',...
    'string','终点的Y坐标值',...
    'position',[275 50 100 20]);
实例33:曲线转换按钮

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例33');
x=0:0.5:2*pi;
y=sin(x);
h=plot(x,y);
grid on
huidiao=[...
    'if i==1,',...
    'i=0;,',...
    'y=cos(x);,',...
    'delete(h),',...
    'set(hm,''string'',''正弦函数''),',...
    'h=plot(x,y);,',...
    'grid on,',...
    'else if i==0,',...
    'i=1;,',...
    'y=sin(x);,',...
    'set(hm,''string'',''余弦函数''),',...
    'delete(h),',...
    'h=plot(x,y);,',...
    'grid on,',...
    'end,',...
    'end'];
hm=uicontrol(gcf,'style','pushbutton',...
    'string','余弦函数',...
    'callback',huidiao);
i=1;
set(hm,'position',[250 20 60 20]);
set(gca,'position',[0.2 0.2 0.6 0.6])
title('按钮的使用')
hold on
实例34:栅格控制按钮

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例34');
x=0:0.5:2*pi;
y=sin(x);
plot(x,y)
huidiao1=[...
        'set(h_toggle2,''value'',0),',...
        'grid on,',...
        ];
huidiao2=[...
        'set(h_toggle1,''value'',0),',...
        'grid off,',...
        ];
h_toggle1=uicontrol(gcf,'style','togglebutton',...
    'string','grid on',...
    'value',0,...
    'position',[20 45 50 20],...
    'callback',huidiao1);

h_toggle2=uicontrol(gcf,'style','togglebutton',...
    'string','grid off',...
    'value',0,...
    'position',[20 20 50 20],...
    'callback',huidiao2);
set(gca,'position',[0.2 0.2 0.6 0.6])
title('开关按钮的使用')
实例35:编辑框的使用

h0=figure('toolbar','none',...
    'position',[200 150 350 250],...
    'name','实例35');
f='Please input the letter';
huidiao1=[...
        'g=upper(f);,',...
        'set(h2_edit,''string'',g),',...
    ];
huidiao2=[...
        'g=lower(f);,',...
        'set(h2_edit,''string'',g),',...
    ];
h1_edit=uicontrol(gcf,'style','edit',...
    'position',[100 200 100 50],...
    'HorizontalAlignment','left',...
    'string','Please input the letter',...
    'callback','f=get(h1_edit,''string'');',...
    'background','w',...
    'max',5,...
    'min',1);
h2_edit=uicontrol(gcf,'style','edit',...
    'HorizontalAlignment','left',...
    'position',[100 100 100 50],...
    'background','w',...
    'max',5,...
    'min',1);
h1_button=uicontrol(gcf,'style','pushbutton',...
    'string','小写变大写',...
    'position',[100 45 100 20],...
    'callback',huidiao1);
h2_button=uicontrol(gcf,'style','pushbutton',...
    'string','大写变小写',...
    'position',[100 20 100 20],...
    'callback',huidiao2);
实例36:弹出式菜单

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例36');
x=0:0.5:2*pi;
y=sin(x);
h=plot(x,y);
grid on
hm=uicontrol(gcf,'style','popupmenu',...
    'string',...
    'sin(x)|cos(x)|sin(x)+cos(x)|exp(-sin(x))',...
    'position',[250 20 50 20]);
set(hm,'value',1)
huidiao=[...
        'v=get(hm,''value'');,',...
        'switch v,',...
        'case 1,',...
        'delete(h),',...
        'y=sin(x);,',...
        'h=plot(x,y);,',...
        'grid on,',...
        'case 2,',...
        'delete(h),',...
        'y=cos(x);,',...
        'h=plot(x,y);,',...
         'grid on,',...
        'case 3,',...
        'delete(h),',...
        'y=sin(x)+cos(x);,',...
        'h=plot(x,y);,',...
         'grid on,',...
        'case 4,',...
        'delete(h),',...
        'y=exp(-sin(x));,',...
        'h=plot(x,y);,',...
         'grid on,',...
        'end'];
set(hm,'callback',huidiao)
set(gca,'position',[0.2 0.2 0.6 0.6])
title('弹出式菜单的使用')
实例37:滑标的使用

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例37');
[x,y]=meshgrid(-8:0.5:8);
r=sqrt(x.^2+y.^2)+eps;
z=sin(r)./r;
h0=mesh(x,y,z);
h1=axes('position',...
    [0.2 0.2 0.5 0.5],...
    'visible','off');
htext=uicontrol(gcf,...
    'units','points',...
    'position',[20 30 45 15],...
    'string','brightness',...
    'style','text');
hslider=uicontrol(gcf,...
    'units','points',...
    'position',[10 10 300 15],...
    'min',-1,...
    'max',1,...
    'style','slider',...
    'callback',...
    'brighten(get(hslider,''value''))');
实例38:多选菜单

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例38');
[x,y]=meshgrid(-8:0.5:8);
r=sqrt(x.^2+y.^2)+eps;
z=sin(r)./r;
h0=mesh(x,y,z);
hlist=uicontrol(gcf,'style','listbox',...
    'string','default|spring|summer|autumn|winter',...
    'max',5,...
    'min',1,...
    'position',[20 20 80 100],...
    'callback',[...
        'k=get(hlist,''value'');,',...
        'switch k,',...
        'case 1,',...
        'colormap default,',...
        'case 2,',...
        'colormap spring,',...
        'case 3,',...
        'colormap summer,',...
        'case 4,',...
        'colormap autumn,',...
        'case 5,',...
        'colormap winter,',...
        'end']);
实例39:菜单控制的使用

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例39');
x=0:0.5:2*pi;
y=cos(x);
h=plot(x,y);
grid on
set(gcf,'toolbar','none')
hm=uimenu('label','example');
huidiao1=[...
        'set(hm_gridon,''checked'',''on''),',...
        'set(hm_gridoff,''checked'',''off''),',...
        'grid on'];
huidiao2=[...
        'set(hm_gridoff,''checked'',''on''),',...
        'set(hm_gridon,''checked'',''off''),',...
        'grid off'];
hm_gridon=uimenu(hm,'label','grid on',...
    'checked','on',...
    'callback',huidiao1);
hm_gridoff=uimenu(hm,'label','grid off',...
    'checked','off',...
    'callback',huidiao2);
实例40:UIMENU菜单的应用

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例40');
h1=uimenu(gcf,'label','函数');
h11=uimenu(h1,'label','轮廓图',...
    'callback',[...
        'set(h31,''checked'',''on''),',...
        'set(h32,''checked'',''off''),',...
        '[x,y,z]=peaks;,',...
        'contour3(x,y,z,30)']);
h12=uimenu(h1,'label','高斯分布',...
    'callback',[...
        'set(h31,''checked'',''on''),',...
        'set(h32,''checked'',''off''),',...
        'mesh(peaks);,',...
        'axis tight']);
h13=uimenu(h1,'label','Sinc函数',...
    'callback',[...
        'set(h31,''checked'',''on''),',...
        'set(h32,''checked'',''off''),',...
        '[x,y]=meshgrid(-8:0.5:8);,',...
        'r=sqrt(x.^2+y.^2)+eps;,',...
        'z=sin(r)./r;,',...
        'mesh(x,y,z)']);
h2=uimenu(gcf,'label','色彩');
hl2(1)=uimenu(h2,'label','Default',...
    'checked','on',...
    'callback',...
    [...
        'set(hl2,''checked'',''off''),',...
        'set(hl2(1),''checked'',''on''),',...
        'colormap(''default'')']);
hl2(2)=uimenu(h2,'label','spring',...
    'callback',...
    [...
        'set(hl2,''checked'',''off''),',...
        'set(hl2(2),''checked'',''on''),',...
        'colormap(spring)']);
hl2(3)=uimenu(h2,'label','Summer',...
    'callback',...
    [...
        'set(hl2,''checked'',''off''),',...
        'set(hl2(3),''checked'',''on''),',...
        'colormap(summer)']);
hl2(4)=uimenu(h2,'label','Autumn',...
    'callback',...
    [...
        'set(hl2,''checked'',''off''),',...
        'set(hl2(4),''checked'',''on''),',...
        'colormap(autumn)']);
hl2(5)=uimenu(h2,'label','Winter',...
    'callback',...
    [...
        'set(hl2,''checked'',''off''),',...
        'set(hl2(5),''checked'',''on''),',...
        'colormap(winter)']);
h3=uimenu(gcf,'label','坐标选项');
h31=uimenu(h3,'label','Axis on',...
    'callback',...
    [...
        'axis on,',...
        'set(h31,''checked'',''on''),',...
        'set(h32,''checked'',''off'')']);
h32=uimenu(h3,'label','Axis off',...
    'callback',...
    [...
        'axis off,',...
        'set(h32,''checked'',''on''),',...
        'set(h31,''checked'',''off'')']);
实例41:除法计算器

h=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例41');
h1=uicontrol(gcf,'style','edit',...
    'position',[80 200 100 20],...
    'HorizontalAlignment','right',...
    'callback',['m=get(h1,''string'');,',...
        'a=str2num(m);']);
h2=uicontrol(gcf,'style','edit',...
    'HorizontalAlignment','right',...
    'position',[80 150 100 20],...
    'callback',['n=get(h2,''string'');,',...
        'b=str2num(n);']);
h3=uicontrol(gcf,'style','text',...
    'string','被除数',...
    'position',[80 230 100 20]);
h4=uicontrol(gcf,'style','edit',...
    'position',[80 50 100 20]);
h5=uicontrol(gcf,'style','pushbutton',...
    'position',[80 100 100 20],...
    'string','=',...
    'callback',[...
        'if b==0,',...
        'h7=errordlg(''除数不能为0!'',''error'',''on'');,',...
        'else,',...
        'k=a/b;,',...
        'c=num2str(k);,',...
        'set(h4,''string'',c),',...
        'end']);
h8=uicontrol(gcf,'style','text',...
    'string','除数',...
    'position',[80 175 100 20]);
h9=uicontrol(gcf,'style','text',...
    'string','商',...
    'position',[80 75 100 20]);
实例42:单选框的使用

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例42');
x=0:0.5:2*pi;
y=sin(x);
plot(x,y)
grid on
set(gcf,'toolbar','none')
g=set(gca,'position',[0.2 0.2 0.6 0.6]);
huidiao1=[...
        'grid on,',...
        'set(box_on,''value'',1),',...
        'set(box_off,''value'',0),'];
huidiao2=[...
        'grid off,',...
        'set(box_off,''value'',1),',...
        'set(box_on,''value'',0),'];
box_on=uicontrol(gcf,'style','radio',...
    'position',[5 50 50 20],...
    'string','grid on',...
    'value',1,...
    'callback',huidiao1);
box_off=uicontrol(gcf,'style','radio',...
    'position',[5 20 50 20],...
    'string','grid off',...
    'value',0,...
    'callback',huidiao2);
title('无线按钮的使用')
实例43:添加环境效果

h0=figure('toolbar','none',...
    'position',[198 56 450 468],...
    'name','实例43');
h1=axes('parent',h0,...
    'position',[0.15 0.45 0.7 0.5],...
    'visible','off');
sphere
h=findobj('type','surface');
shading interp
axis equal
l=light('position',[0 -2 1]);
k(1)=get(h,'specularstrength');
k(2)=get(h,'diffusestrength');
k(3)=get(h,'specularexponent');
k(4)=get(h,'specularcolorreflectance');
u1=uimenu('parent',h0,...
    'label','灯光效果',...
    'tag','u1',...
    'backgroundcolor',[0.75 0.75 0.75]);
u11=uimenu('parent',u1,...
    'label','gouraud',...
    'tag','u11',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'set(u11,''checked'',''on'');,',...
        'set(u12,''checked'',''off'');,',...
        'set(h,''facelighting'',''gouraud'')']);
u12=uimenu('parent',u1,...
    'label','phong',...
    'tag','u12',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'set(u11,''checked'',''off'');,',...
        'set(u12,''checked'',''on'');,',...
        'set(h,''facelighting'',''gouraud'')']);
u2=uimenu('parent',h0,...
    'label','背面灯光',...
    'tag','u2',...
    'backgroundcolor',[0.75 0.75 0.75]);
u21=uimenu('parent',u2,...
    'label','reverselit',...
    'tag','u21',...
    'checked','on',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'set(u21,''checked'',''on'');,',...
        'set(u22,''checked'',''off'');,',...
        'set(h,''backfacelighting'',''reverselit'')']);
u22=uimenu('parent',u2,...
    'label','reverselit',...
    'tag','u22',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'set(u21,''checked'',''off'');,',...
        'set(u22,''checked'',''on'');,',...
        'set(h,''backfacelighting'',''reverselit'')']);
s1=uicontrol('parent',h0,...
    'units','points',...
    'style','slider',...
    'tag','s1',...
    'min',0,...
    'max',1,...
    'value',k(1),...
    'position',[20 80 100 15],...
    'callback',[...
        's1value=get(s1,''value'');,',...
        'set(h,''specularstrength'',s1value)']);
t1=uicontrol('parent',h0,...
    'units','points',...
    'style','text',...
    'tag','t1',...
    'string','镜面反射强度',...
    'position',[20 97 100 15]);
s2=uicontrol('parent',h0,...
    'units','points',...
    'style','slider',...
    'tag','s2',...
    'min',0,...
    'max',1,...
    'value',k(2),...
    'position',[20 30 100 15],...
    'callback',[...
        's2value=get(s2,''value'');,',...
        'set(h,''diffusestrength'',s2value)']);
t2=uicontrol('parent',h0,...
    'units','points',...
    'style','text',...
    'tag','t2',...
    'string','漫反射强度',...
    'position',[20 47 100 15]);
s3=uicontrol('parent',h0,...
    'units','points',...
    'style','slider',...
    'tag','s3',...
    'min',0.1,...
    'max',1,...
    'value',k(3)/20,...
    'position',[220 80 100 15],...
    'callback',[...
        's3value=get(s3,''value'')+eps;,',...
        'set(h,''specularexponent'',20*s3value)']);
t3=uicontrol('parent',h0,...
    'units','points',...
    'style','text',...
    'tag','t3',...
    'string','镜面指数',...
    'position',[220 97 100 15]);
s4=uicontrol('parent',h0,...
    'units','points',...
    'style','slider',...
    'tag','s4',...
    'min',0,...
    'max',1,...
    'value',k(4),...
    'position',[220 30 100 15],...
    'callback',[...
        's4value=get(s4,''value'');,',...
        'set(h,''specularcolorreflectance'',s4value)']);
t4=uicontrol('parent',h0,...
    'units','points',...
    'style','text',...
    'tag','t1',...
    'string','镜面颜色反射比',...
    'position',[220 47 100 15]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'style','pushbutton',...
    'tag','b1',...
    'string','关闭',...
    'position',[145 45 50 30],...
    'callback','close');
实例44:改变坐标轴范围

h0=figure('toolbar','none',...
    'position',[198 56 408 468],...
    'name','实例44');
h1=axes('parent',h0,...
    'position',[0.15 0.45 0.7 0.5],...
    'visible','on');
e1=uicontrol('parent',h0,...
    'style','edit',...
    'string',1,...
    'position',[50 120 50 20]);
t1=uicontrol('parent',h0,...
    'style','text',...
    'string','X轴最小值',...
    'position',[35 150 80 20]);
e2=uicontrol('parent',h0,...
    'style','edit',...
    'string',5,...
    'position',[50 60 50 20]);
t2=uicontrol('parent',h0,...
    'style','text',...
    'string','X轴最大值',...
    'position',[35 90 80 20]);
e3=uicontrol('parent',h0,...
    'style','edit',...
    'string',1,...
    'position',[150 120 50 20]);
t3=uicontrol('parent',h0,...
    'style','text',...
    'string','Y轴最小值',...
    'position',[135 150 80 20]);
e4=uicontrol('parent',h0,...
    'style','edit',...
    'string',5,...
    'position',[150 60 50 20]);
t4=uicontrol('parent',h0,...
    'style','text',...
    'string','Y轴最大值',...
    'position',[135 90 80 20]);
e5=uicontrol('parent',h0,...
    'style','edit',...
    'string',20,...
    'position',[250 120 50 20]);
t5=uicontrol('parent',h0,...
    'style','text',...
    'horizontalalignment','left',...
    'string','点数',...
    'position',[250 150 30 20]);
b1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','绘图',...
    'position',[250 60 60 40],...
    'callback',[...
        'a=str2num(get(e1,''string''));,',...
        'b=str2num(get(e2,''string''));,',...
        'c=str2num(get(e3,''string''));,',...
        'd=str2num(get(e4,''string''));,',...
        'n=str2num(get(e5,''string''));,',...
        'xgrid=linspace(-abs(a),abs(a),n);,',...
        'ygrid=linspace(-abs(b),abs(b),n);,',...
        '[x,y]=meshgrid(xgrid,ygrid);,',...
        'z=c*sqrt(d-y.*y/b/b-x.*x/a/a);,',...
        'u=1;,',...
        'z1=real(z);,',...
        'for k=2:n-1,',...
        'for j=2:n-1,',...
        'if imag(z(k,j))~=0,',...
        'z1(k,j)=0;,',...
        'end,',...
        'if all(imag(z([k-1:k+1],[j-1:j+1])))~=0,',...
        'z1(k,j)=nan;,',...
        'end,',...
        'end,',...
        'end,',...
        'surf(x,y,z1),',...
        'hold on,',...
        'if u==1,',...
        'z2=-z1;,',...
        'surf(x,y,z2),',...
        'axis([-abs(a),abs(a),-abs(b),abs(b),-abs(c),abs(c)]);,',...
        'end,',...
        'xlabel(''x'');,',...
        'ylabel(''y'');,',...
        'zlabel(''z'');,',...
        'hold off']);
b2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','关闭',...
    'position',[150 10 60 20],...
    'callback','close');
实例45:简单运算器

h1=uicontrol(gcf,'style','radio',...
    'string','加',...
    'value',1,...
    'position',[20 150 40 20],...
    'callback',[...
        'k=1;,',...
        'set(h1,''value'',1),',...
        'set(h2,''value'',0),',...
        'set(h3,''value'',0)']);
h2=uicontrol(gcf,'style','radio',...
    'string','减',...
    'position',[20 110 40 20],...
    'callback',[...
        'k=2;,',...
        'set(h2,''value'',1),',...
        'set(h1,''value'',0),',...
        'set(h3,''value'',0)']);
h3=uicontrol(gcf,'style','radio',...
    'string','乘',...
    'position',[20 70 40 20],...
    'callback',[...
        'k=3;,',...
        'set(h3,''value'',1),',...
        'set(h2,''value'',0),',...
        'set(h1,''value'',0)']);
e1=uicontrol(gcf,'style','edit',...
    'position',[80 150 100 20]);
e2=uicontrol(gcf,'style','edit',...
    'position',[80 110 100 20]);
e3=uicontrol(gcf,'style','edit',...
    'position',[80 70 100 20]);
b1=uicontrol(gcf,'style','pushbutton',...
    'string','运算',...
    'position',[200 150 80 30],...
    'callback',[...
        'x=str2num(get(e1,''string''));,',...
        'y=str2num(get(e2,''string''));,',...
        'switch k,',...
        'case 1,',...
        'z=x+y;,',...
        'case 2,',...
        'z=x-y;,',...
        'case 3,',...
        'z=x*y;,',...
        'end,',...
        'set(e3,''string'',num2str(z))']);
b2=uicontrol(gcf,'style','pushbutton',...
    'string','退出',...
    'position',[200 100 80 30],...
    'callback','close');
实例46:曲线色彩的修改

h0=figure('toolbar','none',...
    'position',[198 56 408 468],...
    'name','my second gui');
h1=axes('parent',h0,...
    'position',[0.15 0.45 0.7 0.5],...
    'visible','on');
x=0:0.1:2*pi;
k=plot(x,sin(x));
xlabel('自变量X');
ylabel('函数值Y');
title('图形色彩改变');
p1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'backgroundcolor','r',...
    'position',[60 100 50 30],...
    'callback','set(k,''color'',''r'')');
p2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'backgroundcolor','g',...
    'position',[170 100 50 30],...
    'callback','set(k,''color'',''g'')');
p3=uicontrol('parent',h0,...
    'style','pushbutton',...
    'backgroundcolor','b',...
    'position',[280 100 50 30],...
    'callback','set(k,''color'',''b'')');
p4=uicontrol('parent',h0,...
    'style','pushbutton',...
    'backgroundcolor',[1 1 1],...
    'fontsize',20,...
    'fontweight','demi',...
    'string','关闭',...
    'position',[150 30 80 60],...
    'callback','close');
t1=uicontrol('parent',h0,...
    'style','text',...
    'string','红色',...
    'fontsize',12,...
    'fontweight','demi',...
    'position',[60 120 50 20]);
t2=uicontrol('parent',h0,...
    'style','text',...
    'string','绿色',...
    'fontsize',12,...
    'fontweight','demi',...
    'position',[170 120 50 20]);
t3=uicontrol('parent',h0,...
    'style','text',...
    'string','蓝色',...
    'fontsize',12,...
    'fontweight','demi',...
    'position',[280 120 50 20]);

[ Last edited by plp626 on 2008-5-15 at 08:31 AM ]



山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
2008-5-15 08:28
查看资料  发短消息 网志   编辑帖子  回复  引用回复
plp626
银牌会员

钻石会员


积分 2278
发帖 1020
注册 2007-11-19
状态 离线
『第 2 楼』:  

实例47:曲线标记

h0=figure('toolbar','none',...
    'position',[198 56 408 468],...
    'name','my second gui');
h1=axes('parent',h0,...
    'position',[0.15 0.45 0.7 0.5],...
    'visible','on');
x=0:0.1:2*pi;
k=plot(x,sin(x),'*');
xlabel('自变量X');
ylabel('函数值Y');
title('标记类型的改变');
p1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','+',...
    'fontsize',20,...
    'foregroundcolor',[1 1 1],...
    'backgroundcolor',[0 0 0],...
    'position',[60 100 50 20],...
    'callback','set(k,''marker'',''+'')');
p2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','o',...
    'fontsize',20,...
    'foregroundcolor',[1 1 1],...
    'backgroundcolor',[0 0 0],...
    'position',[170 100 50 20],...
    'callback','set(k,''marker'',''o'')');
p3=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','x',...
    'fontsize',20,...
    'foregroundcolor',[1 1 1],...
    'backgroundcolor',[0 0 0],...
    'position',[280 100 50 20],...
    'callback','set(k,''marker'',''x'')');
p4=uicontrol('parent',h0,...
    'style','pushbutton',...
    'backgroundcolor',[1 1 1],...
    'fontsize',20,...
    'fontweight','demi',...
    'string','关闭',...
    'position',[150 30 80 60],...
    'callback','close');
t1=uicontrol('parent',h0,...
    'style','text',...
    'string','星号',...
    'fontsize',12,...
    'fontweight','demi',...
    'position',[60 120 50 20]);
t2=uicontrol('parent',h0,...
    'style','text',...
    'string','圆圈',...
    'fontsize',12,...
    'fontweight','demi',...
    'position',[170 120 50 20]);
t3=uicontrol('parent',h0,...
    'style','text',...
    'string','叉号',...
    'fontsize',12,...
    'fontweight','demi',...
    'position',[280 120 50 20]);
实例48:修改曲型

h0=figure('toolbar','none',...
    'position',[198 56 408 468],...
    'name','实例48');
h1=axes('parent',h0,...
    'position',[0.15 0.45 0.7 0.5],...
    'visible','on');
x=0:0.1:2*pi;
k=plot(x,sin(x));
xlabel('自变量X');
ylabel('函数值Y');
title('线型的改变');
p1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','-.',...
    'fontsize',20,...
    'foregroundcolor',[1 1 1],...
    'backgroundcolor',[0 0 0],...
    'position',[60 100 50 20],...
    'callback','set(k,''linestyle'',''-.'')');
p2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string',':',...
    'fontsize',20,...
    'foregroundcolor',[1 1 1],...
    'backgroundcolor',[0 0 0],...
    'position',[170 100 50 20],...
    'callback','set(k,''linestyle'','':'')');
p3=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','-',...
    'fontsize',20,...
    'foregroundcolor',[1 1 1],...
    'backgroundcolor',[0 0 0],...
    'position',[280 100 50 20],...
    'callback','set(k,''linestyle'',''-'')');
p4=uicontrol('parent',h0,...
    'style','pushbutton',...
    'backgroundcolor',[1 1 1],...
    'fontsize',20,...
    'fontweight','demi',...
    'string','关闭',...
    'position',[150 30 80 60],...
    'callback','close');
t1=uicontrol('parent',h0,...
    'style','text',...
    'string','点划线',...
    'fontsize',12,...
    'fontweight','demi',...
    'position',[60 120 50 20]);
t2=uicontrol('parent',h0,...
    'style','text',...
    'string','虚线',...
    'fontsize',12,...
    'fontweight','demi',...
    'position',[170 120 50 20]);
t3=uicontrol('parent',h0,...
    'style','text',...
    'string','实线',...
    'fontsize',12,...
    'fontweight','demi',...
    'position',[280 120 50 20]);
实例49:指定坐标轴范围

h0=figure('toolbar','none',...
    'position',[198 56 408 468],...
    'name','实例49');
h1=axes('parent',h0,...
    'position',[0.15 0.45 0.7 0.5],...
    'visible','on');
x=0:0.1:2*pi;
y=sin(x);
plot(x,y);
xlabel('X');
ylabel('Y');
title('坐标轴范围的改变');
h=get(gca,'xlim');
k=get(gca,'ylim');
e1=uicontrol('parent',h0,...
    'style','edit',...
    'string',eval(num2str(h(1))),...
    'horizontalalignment','right',...
    'position',[80 120 100 20]);
t1=uicontrol('parent',h0,...
    'style','text',...
    'string','X轴最小值',...
    'position',[100 145 80 20]);
e2=uicontrol('parent',h0,...
    'style','edit',...
    'string',eval(num2str(h(2))),...
    'horizontalalignment','right',...
    'position',[80 60 100 20]);
t2=uicontrol('parent',h0,...
    'style','text',...
    'string','X轴最大值',...
    'position',[100 85 80 20]);
e3=uicontrol('parent',h0,...
    'style','edit',...
    'string',eval(num2str(k(1))),...
    'horizontalalignment','right',...
    'position',[250 120 100 20]);
t3=uicontrol('parent',h0,...
    'style','text',...
    'string','Y轴最小值',...
    'position',[270 145 80 20]);
e4=uicontrol('parent',h0,...
    'style','edit',...
    'string',eval(num2str(k(2))),...
    'horizontalalignment','right',...
    'position',[250 60 100 20]);
t4=uicontrol('parent',h0,...
    'style','text',...
    'string','X轴最小值',...
    'position',[270 85 80 20]);
p1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','设置',...
    'position',[105 10 50 30],...
    'callback',[...
        'a=str2num(get(e1,''string''));,',...
        'b=str2num(get(e2,''string''));,',...
        'c=str2num(get(e3,''string''));,',...
        'd=str2num(get(e4,''string''));,',...
        'axis([a b c d]),',...
        'drawnow']);
p2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','关闭',...
    'position',[275 10 50 30],...
    'callback','close');
实例50:绘制不同函数曲线的用户界面

h0=figure('toolbar','none',...
    'position',[198 56 408 468],...
    'name','实例50');
h1=axes('parent',h0,...
    'position',[0.29 0.45 0.7 0.5],...
    'visible','on');
f=uicontrol('parent',h0,...
    'style','frame',...
    'position',[5 50 90 400]);
p1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'position',[150 100 60 40],...
    'string','绘图',...
    'callback',[...
        'm=str2num(get(e1,''string''));,',...
        'n=str2num(get(e2,''string''));,',...
        'a=get(l1,''value'');,',...
        'x=m:0.1:n;',...
        'if a==1,',...
        'plot(x,sin(x)),',...
        'end,',...
        'if a==2,',...
        'plot(x,cos(x)),',...
        'end,',...
        'if a==3,',...
        'plot(x,exp(x)),',...
        'end']);
p2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'position',[270 100 60 40],...
    'string','关闭',...
    'callback','close');
l1=uicontrol('parent',h0,...
    'style','listbox',...
    'position',[10 300 80 80],...
    'string','sin(x)|cos(x)|exp(x)',...
    'value',1,...
    'max',0.5,...
    'min',0);
f2=uicontrol('parent',h0,...
    'style','text',...
    'string','选择函数',...
    'fontsize',10,...
    'position',[10 380 80 20]);
r1=uicontrol('style','radio',...
    'string','grid on',...
    'value',0,...
    'position',[10 100 60 20],...
    'callback',[...
        'grid on,',...
        'set(r1,''value'',1);,',...
        'set(r2,''value'',0)']);
r2=uicontrol('style','radio',...
    'string','grid off',...
    'position',[10 80 60 20],...
    'value',1,...
    'callback',[...
        'grid off,',...
        'set(r2,''value'',1);,',...
        'set(r1,''value'',0)']);
e1=uicontrol('parent',h0,...
    'style','edit',...
    'string',0,...
    'position',[20 210 60 20],...
    'horizontalalignment','right');
e2=uicontrol('parent',h0,...
    'style','edit',...
    'string','3',...
    'position',[20 150 60 20],...
    'horizontalalignment','right');
t1=uicontrol('parent',h0,...
    'style','text',...
    'string','X from',...
    'fontsize',10,...
    'position',[20 230 60 20],...
    'horizontalalignment','center');
t2=uicontrol('parent',h0,...
    'style','text',...
    'string','To',...
    'fontsize',10,...
    'position',[20 170 60 20],...
    'horizontalalignment','center');
实例51:可设置函数曲线图视角的用户界面

h0=figure('toolbar','none',...
    'position',[198 56 408 468],...
    'name','实例51');
h1=axes('parent',h0,...
    'position',[0.15 0.45 0.7 0.5],...
    'visible','off');
[x,y]=meshgrid(-8:0.5:8);
r=sqrt(x.^2+y.^2)+eps;
z=sin(r)./r;
f1=surf(x,y,z);
shading interp
view(-50,30)
camlight left
colormap([1 0 0])
fv=get(h0,'colormap');
ifv=fv;
p1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','重置',...
    'position',[280 120 50 30],...
    'callback',[...
        'set(s1,''value'',ifv(1));,',...
        'set(s2,''value'',ifv(2));,',...
        'set(s3,''value'',ifv(3));,',...
        'set(h0,''colormap'',ifv)']);
p2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','关闭',...
    'position',[280 60 50 30],...
    'callback','close');
s1=uicontrol('parent',h0,...
    'style','slider',...
    'min',0,...
    'max',1,...
    'value',fv(1),...
    'position',[20 150 200 20],...
    'callback',[...
        's1k=get(s1,''value'');,',...
        'fv(1)=s1k;,',...
        'set(h0,''colormap'',fv);']);
t1=uicontrol('parent',h0,...
    'style','text',...
    'string','改变红色成分',...
    'position',[20 170 100 20]);
s2=uicontrol('parent',h0,...
    'style','slider',...
    'min',0,...
    'max',1,...
    'value',fv(2),...
    'position',[20 100 200 20],...
    'callback',[...
        's2k=get(s2,''value'');,',...
        'fv(2)=s2k;,',...
        'set(h0,''colormap'',fv);']);
t2=uicontrol('parent',h0,...
    'style','text',...
    'string','改变绿色成分',...
    'position',[20 120 100 20]);
s3=uicontrol('parent',h0,...
    'style','slider',...
    'min',0,...
    'max',1,...
    'value',fv(3),...
    'position',[20 50 200 20],...
    'callback',[...
        's3k=get(s3,''value'');,',...
        'fv(3)=s3k;,',...
        'set(h0,''colormap'',fv);']);
t1=uicontrol('parent',h0,...
    'style','text',...
    'string','改变蓝色成分',...
    'position',[20 70 100 20]);
实例52:可设置函数曲线图视角的用户界面

h0=figure('toolbar','none',...
    'position',[198 56 408 468],...
    'name','实例52');
h1=axes('parent',h0,...
    'position',[0.15 0.5 0.7 0.5],...
    'visible','off');
[x,y]=meshgrid(-8:0.5:8);
r=sqrt(x.^2+y.^2)+eps;
z=sin(r)./r;
fh=surf(x,y,z);
shading interp
view([-60 30])
fv=get(h1,'view');
fv2=fv;
camlight left
sh1=uicontrol('parent',h0,...
    'style','slider',...
    'max',1,...
    'min',-1,...
    'value',fv(1)/180,...
    'position',[20 150 200 20],...
    'callback',[...
        'fv(1)=90*get(sh1,''value'');,',...
        'set(h1,''view'',[fv(1) fv(2)]),',...
        'set(ed1,''string'',fv(1))']);   
text1=uicontrol('parent',h0,...
    'style','text',...
    'string','方位角的变化滑标',...
    'position',[20 170 200 20]);
sh2=uicontrol('parent',h0,...
    'style','slider',...
    'max',1,...
    'min',-1,...
    'value',fv(2)/180,...
    'position',[20 90 200 20],...
    'callback',[...
        'fv(2)=90*get(sh2,''value'');,',...
        'set(h1,''view'',[fv(1) fv(2)]),',...
        'set(ed2,''string'',fv(2))']);
text2=uicontrol('parent',h0,...
    'style','text',...
    'string','仰角的变化滑标',...
    'position',[20 110 200 20]);
ed1=uicontrol('parent',h0,...
    'style','edit',...
    'string',fv(1),...
    'position',[30 30 50 20]);
text3=uicontrol('parent',h0,...
    'style','text',...
    'string','方位角的数值',...
    'position',[20 50 80 20]);
ed2=uicontrol('parent',h0,...
    'style','edit',...
    'string',fv(2),...
    'position',[150 30 50 20]);
text4=uicontrol('parent',h0,...
    'style','text',...
    'string','仰角的数值',...
    'position',[135 50 80 20]);
pf1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','重置',...
    'position',[280 120 50 30],...
    'callback',[...
        'set(h1,''view'',fv2),',...
        'set(sh1,''value'',fv2(1)/180),',...
        'set(sh2,''value'',fv2(2)/180),',...
        'set(ed1,''string'',fv2(1)),',...
        'set(ed2,''string'',fv2(2))']);
pf2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','关闭',...
    'position',[280 60 50 30],...
    'callback','close');
实例53:可设置函数曲线光源的用户界面

h0=figure('toolbar','none',...
    'position',[198 56 408 468],...
    'name','实例53');
h1=axes('parent',h0,...
    'position',[0.15 0.5 0.7 0.5],...
    'visible','off');
[x,y]=meshgrid(-8:0.5:8);
r=sqrt(x.^2+y.^2)+eps;
z=sin(r)./r;
fh=surf(x,y,z);
shading interp
view([-60 30])
camlight left
lightk=light('position',[0 -2 1]);
button1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','设置光线',...
    'position',[80 60 70 30],...
    'callback',[...
        'an1=inputdlg(''光线来源的X轴坐标'');,',...
        'k1=str2num(an1{1});,',...
        'an2=inputdlg(''光线来源的Y轴坐标'');,',...
        'k2=str2num(an2{1});,',...
        'an3=inputdlg(''光线来源的Z轴坐标'');,',...
        'k3=str2num(an3{1});,',...
        'set(lightk,''position'',[k1 k2 k3]);,',...
        'set(edit1,''string'',[''['',num2str(k1),'' '',num2str(k2),'' '',num2str(k3),'']'']);']);
button2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'string','关闭',...
    'position',[250 60 70 30],...
    'callback','close');
edit1=uicontrol('parent',h0,...
    'style','edit',...
    'max',2,...
    'min',0,...
    'fontsize',15,...
    'backgroundcolor',[1 1 1],...
    'string','[0 -2 1]',...
    'position',[80 110 220 30]);
text1=uicontrol('parent',h0,...
    'style','text',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'fontsize',15,...
    'string','光线来源坐标',...
    'position',[80 140 220 30]);
实例54:添加效果

h0=figure('toolbar','none',...
    'position',[200 50 300 350],...
    'name','实例54');
h1=axes('parent',h0,...
    'position',[0.2 0.4 0.6 0.6],...
    'visible','off');
ezsurf('sin(sqrt(x.^2+y.^2))/sqrt(x.^2+y.^2)',[-6*pi,6*pi])
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','设置',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[40 50 50 20],...
    'callback',[...
        'view(0,75);,',...
        'shading interp;,',...
        'lightangle(-45,30);,',...
        'k=findobj(gca,''type'',''surface'');,'...
        'set(k,''facelighting'',''phong'');,',...
        'set(k,''ambientstrength'',0.3);,',...
        'set(k,''diffusestrength'',0.8);,',...
        'set(k,''specularstrength'',0.9);,',...
        'set(k,''specularexponent'',25);,',...
        'set(k,''backfacelighting'',''unlit'')']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[120 50 50 20],...
    'callback','close');
实例55:查询日期

h0=figure('toolbar','none',...
    'position',[198 56 408 468],...
    'name','实例55');
h1=axes('parent',h0,...
    'position',[0.15 0.5 0.7 0.5],...
    'visible','off');
huidiao=[...
        'yearnum=str2num(get(edit1,''string''));,',...
        'monthnum=str2num(get(edit2,''string''));,',...
        'daynum=str2num(get(edit3,''string''));,',...
        'monthday=[0 31 28 31 30 31 30 31 31 30 31 30 31];,',...
        'dyear=yearnum-2000;,',...
        'beishu=fix(dyear/4);,',...
        'yushu=rem(yearnum,4);,',...
        'if yushu==0,',...
        'monthday(3)=29;,',...
        'end,',...
        'mday=0;,',...
        'for i=1:monthnum,',...
        'mday=monthday(i)+mday;,',...
        'end,',...
        'yearday=mday+daynum-1;,',...
        'noweek=fix(yearday/7);,',...
        'set(edit5,''string'',[''第'',num2str(noweek),''周'']);,',...
        'if dyear>0,',...
        'if yushu==0,',...
        'beishu=beishu-1;,',...
        'end,',...
        'dday=yearday+365*dyear+beishu+1;,',...
        'end,',...
        'if dyear<=0,',...
        'dday=365*dyear+yearday+beishu;,',...
        'end,',...
        'mweek=rem(dday,7)+7;,',...
        'if mweek==8,',...
        'set(edit4,''string'',''Sunday'');,',...
        'end,',...
        'if mweek==9,',...
        'set(edit4,''string'',''Monday'');,',...
        'end,',...
        'if mweek==10,',...
        'set(edit4,''string'',''Tuesday'');,',...
        'end,',...
        'if mweek==11,',...
        'set(edit4,''string'',''Wednesday'');,',...
        'end,',...
        'if mweek==12,',...
        'set(edit4,''string'',''Thursday'');,',...
        'end,',...
        'if mweek==13,',...
        'set(edit4,''string'',''Friday'');,',...
        'end,',...
        'if mweek==7,',...
        'set(edit4,''string'',''Saturday'');,',...
        'end,',...
        'if mweek==6,',...
        'set(edit4,''string'',''Friday'');,',...
        'end,',...
        'if mweek==5,',...
        'set(edit4,''string'',''Thursday'');,',...
        'end,',...
        'if mweek==4,',...
        'set(edit4,''string'',''Wednesday'');,',...
        'end,',...
        'if mweek==3,',...
        'set(edit4,''string'',''Tuesday'');,',...
        'end,',...
        'if mweek==2,',...
        'set(edit4,''string'',''Monday'');,',...
        'end,',...
        'if mweek==1,',...
        'set(edit4,''string'',''Sunday'');,',...
        'end'];
edit1=uicontrol('parent',h0,...
    'style','edit',...
    'horizontalalignment','right',...
    'position',[40 300 50 20]);
text1=uicontrol('parent',h0,...
    'style','text',...
    'string','年',...
    'horizontalalignment','left',...
    'position',[90 300 50 20]);
edit2=uicontrol('parent',h0,...
    'style','edit',...
    'horizontalalignment','right',...
    'position',[160 300 50 20]);
text2=uicontrol('parent',h0,...
    'style','text',...
    'string','月',...
    'horizontalalignment','left',...
    'position',[210 300 50 20]);
edit3=uicontrol('parent',h0,...
    'style','edit',...
    'horizontalalignment','right',...
    'position',[280 300 50 20]);
text3=uicontrol('parent',h0,...
    'style','text',...
    'string','日',...
    'horizontalalignment','left',...
    'position',[330 300 50 20]);
edit4=uicontrol('parent',h0,...
    'style','edit',...
    'horizontalalignment','left',...
    'position',[210 200 120 20]);
text4=uicontrol('parent',h0,...
    'style','text',...
    'string','查找的日期为',...
    'horizontalalignment','right',...
    'position',[110 200 100 20]);
edit5=uicontrol('parent',h0,...
    'style','edit',...
    'horizontalalignment','left',...
    'position',[210 100 120 20]);
text1=uicontrol('parent',h0,...
    'style','text',...
    'string','该日处于',...
    'horizontalalignment','left',...
    'position',[160 100 50 20]);
button1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'position',[80 40 80 30],...
    'string','开始',...
    'callback',huidiao);
button2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'position',[220 40 80 30],...
    'string','关闭',...
    'callback','close');
实例56:图形效果(1)

h0=figure('toolbar','none',...
    'position',[198 56 450 468],...
    'name','实例56');
h1=axes('parent',h0,...
    'position',[0.3 0.45 0.5 0.5],...
    'visible','off');
l1=uimenu(gcf,'label','Draw figure',...
    'tag','l1');
huidiao=[...
        'if get(r1,''value'')==1,',...
        'shading faceted,',...
        'end,',...
        'if get(r2,''value'')==1,',...
        'shading flat,',...
        'end,',...
        'if get(r3,''value'')==1,',...
        'shading interp,',...
        'end,',...
        'k=get(p1,''value'');,',...
        'switch k,',...
        'case 1,',...
        'colormap(''cool''),',...
        'case 2,',...
        'colormap(''spring''),',...
        'case 3,',...
        'colormap(''summer''),',...
        'case 4,',...
        'colormap(''autumn''),',...
        'case 5,',...
        'colormap(''winter''),',...
        'end'];
l11=uimenu('parent',l1,...
    'label','Surface',...
    'tag','l11',...
    'callback',[...
        '[x,y]=meshgrid(-8:0.5:8);,',...
        'r=sqrt(x.^2+y.^2)+eps;,',...
        'z=sin(r)./r;,',...
        'surf(x,y,z),',...
        huidiao]);
l12=uimenu('parent',l1,...
    'label','Mesh',...
    'tag','l12',...
    'callback',[...
        'mesh(peaks),',...
        huidiao]);
l13=uimenu('parent',l1,...
    'label','Membrane',...
    'tag','l13',...
    'callback',[...
        'mesh(membrane),',...
        huidiao]);
f1=uicontrol('parent',h0,...
    'units','points',...
    'listboxtop',0,...
    'position',[12 6 100 101],...
    'style','frame',...
    'tag','f1');
r1=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[19.5 58.5 72.75 16.5],...
    'string','shading faceted',...
    'style','radiobutton',...
    'tag','r1',...
    'value',1,...
    'callback',[...
        'shading faceted,',...
        'set(r1,''value'',1);,',...
        'set(r2,''value'',0);,',...
        'set(r3,''value'',0);']);
r2=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[19.5 35.25 78.75 18.75],...
    'string','shading flat',...
    'style','radiobutton',...
    'tag','r2',...
    'value',0,...
    'callback',[...
        'shading flat,',...
        'set(r2,''value'',1);,',...
        'set(r1,''value'',0);,',...
        'set(r3,''value'',0);']);
r3=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[19.5 12.75 71.25 18.75],...
    'string','shading interp',...
    'style','radiobutton',...
    'tag','r3',...
    'value',0,...
    'callback',[...
        'shading interp,',...
        'set(r3,''value'',1);,',...
        'set(r1,''value'',0);,',...
        'set(r2,''value'',0);']);
t1=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'fontsize',12,...
    'listboxtop',0,...
    'position',[14.25 75.75 90.75 22.5],...
    'string','平滑处理',...
    'style','text',...
    'tag','t1');
t2=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'fontsize',12,...
    'listboxtop',0,...
    'position',[117 69 72.75 17.5],...
    'string','设置色调',...
    'style','text',...
    'tag','t2');
p1=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[116.25 39 72.75 20.25],...
    'string','Cool|Spring|Summer|Autumn|Winter',...
    'style','popupmenu',...
    'tag','p1',...
    'value',1,...
    'callback',[...
        'k=get(p1,''value'');,',...
        'switch k,',...
        'case 1,',...
        'colormap(''cool''),',...
        'case 2,',...
        'colormap(''spring''),',...
        'case 3,',...
        'colormap(''summer''),',...
        'case 4,',...
        'colormap(''autumn''),',...
        'case 5,',...
        'colormap(''winter''),',...
        'end']);
b1=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[12 243 72.75 30.75],...
    'string','关闭',...
    'tag','b1',...
    'callback','close');
b2=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[216.75 67.5 83.25 18.75],...
    'string','Colorbar',...
    'tag','b2',...
    'callback','colorbar');
实例57:图形效果

h0=figure('toolbar','none',...
    'position',[168 94.5 315 289.5],...
    'name','实例57');
h1=axes('parent',h0,...
    'position',[0.4 0.4 0.5 0.5],...
    'visible','off');
f1=uicontrol('parent',h0,...
    'style','frame',...
    'position',[15 10 80 70],...
    'string','dull',...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'tag','r1',...
    'value',1,...
    'callback',[...
        'set(r1,''value'',1);,',...
        'set(r2,''value'',0);,',...
        'set(r3,''value'',0);,',...
        'material dull']);
r1=uicontrol('parent',h0,...
    'style','radiobutton',...
    'position',[19.5 58.5 72.75 16.5],...
    'string','dull',...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'tag','r1',...
    'value',1,...
    'callback',[...
        'set(r1,''value'',1);,',...
        'set(r2,''value'',0);,',...
        'set(r3,''value'',0);,',...
        'material dull']);
r2=uicontrol('parent',h0,...
    'style','radiobutton',...
    'position',[19.5 35.25 72.75 16.5],...
    'string','metal',...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'tag','r2',...
    'value',0,...
    'callback',[...
        'set(r2,''value'',1);,',...
        'set(r1,''value'',0);,',...
        'set(r3,''value'',0);,',...
        'material metal']);
r3=uicontrol('parent',h0,...
    'style','radiobutton',...
    'position',[19.5 12.75 72.75 16.5],...
    'string','shiny',...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'tag','r3',...
    'value',0,...
    'callback',[...
        'set(r3,''value'',1);,',...
        'set(r1,''value'',0);,',...
        'set(r2,''value'',0);,',...
        'material shiny']);
u1=uimenu('parent',h0,...
    'label','绘图',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'tag','u1',...
    'callback',[...
        '[x,y]=meshgrid(-8:0.5:8);,',...
        'r=sqrt(x.^2+y.^2)+eps;,',...
        'z=sin(r)./r;,',...
        'surf(x,y,z),',...
        'shading interp']);
b1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'position',[19.5 150 60 20],...
    'string','light',...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'tag','b1',...
    'callback','camlight headlight');
b2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'position',[19.5 100 60 20],...
    'string','关闭',...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'tag','b2',...
    'callback','close');
实例58:可控制小球运动速度的用户界面

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','实例58');
h1=axes('parent',h0,...
    'position',[0.25 0.45 0.5 0.5],...
    'visible','off');
t=0:0.1:4*pi;
x=sin(t);
y=cos(t);
plot(x,y)
axis equal
axis off
h=line('color',[1 0 0],...
    'linestyle','.',...
    'xdata',0,...
    'ydata',1,...
    'markersize',20,...
    'erasemode','xor');
n=length(t);
i=1;
speed=0.01;
k=0;
b1huidiao=[...
        'k=0;,',...
        'while 1,',...
        'set(h,''xdata'',x(i),''ydata'',y(i));,',...
        'drawnow,',...
        'pause(speed),',...
        'i=i+1;,',...
        'if i>n,',...
        'i=1;,',...
        'end,',...
        'if k==1,',...
        'break,',...
        'end,',...
        'end'];
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','开始',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[30 80 50 20],...
    'callback',b1huidiao);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','停止',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 80 50 20],...
    'callback','k=1;');
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 80 50 20],...
    'callback',[...
        'k=1;,',...
        'close']);
s1=uicontrol('parent',h0,...
    'units','points',...
    'tag','s1',...
    'style','slider',...
    'value',50*speed,...
    'max',1,...
    'min',0,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[30 115 190 20],...
    'callback',[...
        'm=get(s1,''value'');,',...
        'speed=m/50;']);
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'fontsize',15,...
    'string','小球运动速度',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[30 135 190 20]);
实例59:设置坐标轴纵横轴比

h0=figure('name','实例59');
h1=axes('parent',h0,...
    'position',[0.3 0.45 0.5 0.5],...
    'visible','off');
u1=uimenu('parent',h0,...
    'label','绘图',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'tag','u1',...
    'callback',[...
        '[x,y]=meshgrid(-8:0.5:8);,',...
        'r=sqrt(x.^2+y.^2)+eps;,',...
        'z=sin(r)./r;,',...
        'mesh(x,y,z),',...
        'shading interp,',...
        'axis normal']);
f1=uicontrol('parent',h0,...
    'units','points',...
    'listboxtop',0,...
    'position',[12 6 100 150],...
    'style','frame',...
    'tag','f1');
t1=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[19.5 130 72.75 16.5],...
    'string','坐标纵横比',...
    'style','text',...
    'tag','t1');
r1=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[19.5 110 72.75 16.5],...
    'string','axis equal',...
    'style','radiobutton',...
    'tag','r1',...
    'value',1,...
    'callback',[...
        'set(r1,''value'',1);,',...
        'set(r2,''value'',0);,',...
        'set(r3,''value'',0);,',...
        'set(r4,''value'',0);,',...
        'set(r5,''value'',0);,',...
        'axis equal']);
r2=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[19.5 85 72.75 16.5],...
    'string','axis square',...
    'style','radiobutton',...
    'tag','r2',...
    'value',0,...
    'callback',[...
        'set(r2,''value'',1);,',...
        'set(r1,''value'',0);,',...
        'set(r3,''value'',0);,',...
        'set(r4,''value'',0);,',...
        'set(r5,''value'',0);,',...
        'axis square']);
r3=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[19.5 60 72.75 16.5],...
    'string','axis image',...
    'style','radiobutton',...
    'tag','r3',...
    'value',0,...
    'callback',[...
        'set(r3,''value'',1);,',...
        'set(r2,''value'',0);,',...
        'set(r1,''value'',0);,',...
        'set(r4,''value'',0);,',...
        'set(r5,''value'',0);,',...
        'axis image']);
r4=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[19.5 35 72.75 16.5],...
    'string','axie vis3d',...
    'style','radiobutton',...
    'tag','r4',...
    'value',0,...
    'callback',[...
        'set(r4,''value'',1);,',...
        'set(r2,''value'',0);,',...
        'set(r3,''value'',0);,',...
        'set(r1,''value'',0);,',...
        'set(r5,''value'',0);,',...
        'axis vis3d']);
r5=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[19.5 10 72.75 16.5],...
    'string','axis auto',...
    'style','radiobutton',...
    'tag','r5',...
    'value',0,...
    'callback',[...
        'set(r5,''value'',1);,',...
        'set(r2,''value'',0);,',...
        'set(r3,''value'',0);,',...
        'set(r4,''value'',0);,',...
        'set(r1,''value'',0);,',...
        'axis auto']);
b1=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[12 243 72.75 30.75],...
    'string','关闭',...
    'tag','b1',...
    'callback','close');
b2=uicontrol('parent',h0,...
    'units','points',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'listboxtop',0,...
    'position',[216.75 67.5 83.25 18.75],...
    'string','Colorbar',...
    'tag','b2',...
    'callback','colorbar');
实例60:动态文本显示

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','实例60');
h1=axes('parent',h0,...
    'position',[0.25 0.45 0.5 0.5],...
    'visible','off');
str1='当前阻尼比=';
z=0.52;
t=0:0.1:10;
y=step(1,[1 2*z 1],t);
hline=plot(t,y);
grid on
r1=uicontrol('parent',h0,...
    'units','points',...
    'tag','r1',...
    'style','radio',...
    'string','grid on',...
    'position',[30 120 60 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'value',1,...
    'callback',[...
        'grid on,',...
        'set(r1,''value'',1);,',...
        'set(r2,''value'',0)']);
r2=uicontrol('parent',h0,...
    'units','points',...
    'tag','r2',...
    'style','radio',...
    'string','grid on',...
    'position',[30 95 60 20],...
     'backgroundcolor',[0.75 0.75 0.75],...
    'value',0,...
    'callback',[...
        'grid off,',...
        'set(r2,''value'',1);,',...
        'set(r1,''value'',0)']);
s1=uicontrol('parent',h0,...
    'units','points',...
    'tag','s1',...
    'style','slider',...
    'value',z,...
    'position',[100 95 150 20],...
     'backgroundcolor',[0.75 0.75 0.75],...
    'max',1,...
    'min',0,...
    'callback',[...
        'z=get(s1,''value'');,',...
        'set(t1,''string'',[str1,sprintf(''%1.4g\'',z)]);,',...
        'delete(hline),',...
        'y=step(1,[1 2*z 1],t);,',...
        'hline=plot(t,y);,',...
        'if get(r1,''value'')==1,',...
        'grid on,',...
        'end,',...
        'if get(r2,''value'')==1,',...
        'grid off,',...
        'end']);
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string',[str1,sprintf('%1.4g\',z)],...
    'position',[100 120 150 20],...
    'backgroundcolor',[0.75 0.75 0.75]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','关闭',...
    'position',[80 50 80 30],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'fontsize',15,...
    'callback','close');
实例61:浏览流体数据

h0=figure('toolbar','none',...
    'position',[198 56 450 468],...
    'name','实例61');
h1=axes('parent',h0,...
    'position',[0.3 0.45 0.5 0.5],...
    'visible','off');
[x,y,z,v]=flow;
xmin=min(x(:));
ymin=min(y(:));
zmin=min(z(:));
xmax=max(x(:));
ymax=max(y(:));
zmax=max(z(:));
u1=uimenu('parent',h0,...
    'tag','u1',...
    'label','绘图',...
    'background',[0.75 0.75 0.75]);
u11=uimenu('parent',u1,...
    'tag','u11',...
    'label','绕X轴旋转-45度',...
    'background',[0.75 0.75 0.75],...
    'callback',[...
        'cla,',...
        'hslice=surf(linspace(xmin,xmax,100),linspace(ymin,ymax,100),zeros(100));,',...
        'rotate(hslice,[-1,0,0],-45),',...
        'xd=get(hslice,''xdata'');,',...
        'yd=get(hslice,''ydata'');,',...
        'zd=get(hslice,''zdata'');']);
u12=uimenu('parent',u1,...
    'tag','u12',...
    'label','绕Y轴旋转-45度',...
    'background',[0.75 0.75 0.75],...
    'callback',[...
        'cla,',...
        'hslice=surf(linspace(xmin,xmax,100),linspace(ymin,ymax,100),zeros(100));,',...
        'rotate(hslice,[0,-1,0],-45),',...
        'xd=get(hslice,''xdata'');,',...
        'yd=get(hslice,''ydata'');,',...
        'zd=get(hslice,''zdata'');']);
b1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'units','points',...
    'tag','b1',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','设置颜色',...
    'position',[50 120 60 25],...
    'callback',[...
        'delete(hslice),',...
        'h=slice(x,y,z,v,xd,yd,zd);,',...
        'set(h,''facecolor'',''interp'',''edgecolor'',''none'',''diffusestrength'',0.8)']);
b2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'units','points',...
    'tag','b2',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','添加切片1',...
    'position',[240 120 60 25],...
    'callback',[...
        'hold on,',...
        'hx=slice(x,y,z,v,xmax,[],[]);,',...
        'set(hx,''facecolor'',''interp'',''edgecolor'',''none'')']);
b3=uicontrol('parent',h0,...
    'style','pushbutton',...
    'units','points',...
    'tag','b3',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','添加切片2',...
    'position',[240 70 60 20],...
    'callback',[...
        'hold on,',...
        'hy=slice(x,y,z,v,ymax,[],[]);,',...
        'set(hy,''facecolor'',''interp'',''edgecolor'',''none'')']);
b4=uicontrol('parent',h0,...
    'style','pushbutton',...
    'units','points',...
    'tag','b4',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','添加切片3',...
    'position',[240 20 60 20],...
    'callback',[...
        'hold on,',...
        'hz=slice(x,y,z,v,zmax-1,[],[]);,',...
        'set(hz,''facecolor'',''interp'',''edgecolor'',''none'')']);
b5=uicontrol('parent',h0,...
    'style','pushbutton',...
    'units','points',...
    'tag','b5',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','灯光效果',...
    'position',[50 70 60 20],...
    'callback',[...
        'daspect([1 1 1]),',...
        'axis tight,',...
        'box on,',...
        'view(-38.5,16),',...
        'camzoom(1.4),',...
        'camproj perspective,',...
        'lightangle(-45,45)']);
b6=uicontrol('parent',h0,...
    'style','pushbutton',...
    'units','points',...
    'tag','b6',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','colorbar',...
    'position',[50 20 60 20],...
    'callback','colorbar(''horiz'')');
b7=uicontrol('parent',h0,...
    'style','pushbutton',...
    'units','points',...
    'tag','b7',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','关闭',...
    'fontsize',14,...
    'position',[145 75 60 20],...
    'callback','close');
实例62:简单计算器

h0=figure('toolbar','none',...
    'position',[200 60 220 240],...
    'name','实例62');
b0=uicontrol('parent',h0,...
    'units','points',...
    'tag','b0',...
    'style','pushbutton',...
    'string','0',...
    'fontsize',12,...
    'position',[5 15 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'if k==''0''&i==0,',...
        'errordlg(''数字首位不能为0''),',...
        'else,',...
        'k=[k,''0''];,',...
        'if k==''00'',',...
        'k=''0'';,',...
        'end,',...
        'set(e1,''string'',k);,',...
        'end']);
b15=uicontrol('parent',h0,...
    'units','points',...
    'tag','b15',...
    'style','pushbutton',...
    'string','=',...
    'fontsize',12,...
    'position',[45 15 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'k=get(e1,''string'');,',...
        'if g==''+'',',...
        'm=m+str2num(k);,',...
        'end,',...
        'if g==''-'',',...
        'm=m-str2num(k);,',...
        'end,',...
        'if g==''*'',',...
        'm=m*str2num(k);,',...
        'end,',...
        'if g==''/'',',...
        'if k==''0'',',...
        'errordlg(''除数不能为0'');,',...
        'end,',...
        'm=m/str2num(k);,',...
        'end,',...
        'set(e1,''string'',num2str(m));,',...
        'i=0;']);
b11=uicontrol('parent',h0,...
    'units','points',...
    'tag','b11',...
    'style','pushbutton',...
    'string','+',...
    'fontsize',12,...
    'position',[85 15 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'i=i+1;,',...
        'if i==1,',...
        'm=str2num(k);,',...
        'set(e1,''string'',''0'');,',...
        'end,',...
        'if i>1,',...
        'k=get(e1,''string'');,',...
        'if g==''+'',',...
        'm=m+str2num(k);,',...
        'end,',...
        'if g==''-'',',...
        'm=m-str2num(k);,',...
        'end,',...
        'if g==''*'',',...
        'm=m*str2num(k);,',...
        'end,',...
        'if g==''/'',',...
        'if k==''0'',',...
        'errordlg(''除数不能为0'');,',...
        'end,',...
        'm=m/str2num(k);,',...
        'end,',...
        'set(e1,''string'',num2str(m));,',...
        'i=1;,',...
        'end,',...
        'k=''0'';,',...
        'g=''+'';']);
b16=uicontrol('parent',h0,...
    'units','points',...
    'tag','b16',...
    'style','pushbutton',...
    'string','关闭',...
    'fontsize',12,...
    'position',[125 15 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback','close');
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','1',...
    'fontsize',12,...
    'position',[5 45 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'if k==''0'',',...
        'k='''';,',...
        'end,',...
        'k=[k,''1''];,',...
        'set(e1,''string'',k);']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','2',...
    'fontsize',12,...
    'position',[45 45 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'if k==''0'',',...
        'k='''';,',...
        'end,',...
        'k=[k,''2''];,',...
        'set(e1,''string'',k);']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','3',...
    'fontsize',12,...
    'position',[85 45 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'if k==''0'',',...
        'k='''';,',...
        'end,',...
        'k=[k,''3''];,',...
        'set(e1,''string'',k);']);
b14=uicontrol('parent',h0,...
    'units','points',...
    'tag','b14',...
    'style','pushbutton',...
    'string','/',...
    'fontsize',12,...
    'position',[125 45 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'i=i+1;,',...
        'if i==1,',...
        'm=str2num(k);,',...
        'set(e1,''string'',''0'');,',...
        'end,',...
        'if i>1,',...
        'k=get(e1,''string'');,',...
        'if k==''0'',',...
        'errordlg(''除数不能为0'');,',...
        'end,',...
        'if ~(k==''0''),',...
        'if g==''+'',',...
        'm=m+str2num(k);,',...
        'end,',...
        'if g==''-'',',...
        'm=m-str2num(k);,',...
        'end,',...
        'if g==''*'',',...
        'm=m*str2num(k);,',...
        'end,',...
        'if g==''/'',',...
        'm=m/str2num(k);,',...
        'end,',...
        'set(e1,''string'',num2str(m));,',...
        'end,',...
        'i=1;,',...
        'end,',...
        'k=''0'';,',...
        'g=''/'';']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'style','pushbutton',...
    'string','4',...
    'fontsize',12,...
    'position',[5 75 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'if k==''0'',',...
        'k='''';,',...
        'end,',...
        'k=[k,''4''];,',...
        'set(e1,''string'',k);']);
b5=uicontrol('parent',h0,...
    'units','points',...
    'tag','b5',...
    'style','pushbutton',...
    'string','5',...
    'fontsize',12,...
    'position',[45 75 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'if k==''0'',',...
        'k='''';,',...
        'end,',...
        'k=[k,''5''];,',...
        'set(e1,''string'',k);']);
b6=uicontrol('parent',h0,...
    'units','points',...
    'tag','b6',...
    'style','pushbutton',...
    'string','6',...
    'fontsize',12,...
    'position',[85 75 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'if k==''0'',',...
        'k='''';,',...
        'end,',...
        'k=[k,''6''];,',...
        'set(e1,''string'',k);']);
b13=uicontrol('parent',h0,...
    'units','points',...
    'tag','b13',...
    'style','pushbutton',...
    'string','*',...
    'fontsize',12,...
    'position',[125 75 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'i=i+1;,',...
        'if i==1,',...
        'm=str2num(k);,',...
        'set(e1,''string'',''0'');,',...
        'end,',...
        'if i>1,',...
        'k=get(e1,''string'');,',...
        'if g==''+'',',...
        'm=m+str2num(k);,',...
        'end,',...
        'if g==''-'',',...
        'm=m-str2num(k);,',...
        'end,',...
        'if g==''*'',',...
        'm=m*str2num(k);,',...
        'end,',...
        'if g==''/'',',...
        'if k==''0'',',...
        'errordlg(''除数不能为0'');,',...
        'end,',...
        'm=m/str2num(k);,',...
        'end,',...
        'set(e1,''string'',num2str(m));,',...
        'i=1;,',...
        'end,',...
        'k=''0'';,',...
        'g=''*'';']);
b7=uicontrol('parent',h0,...
    'units','points',...
    'tag','b7',...
    'style','pushbutton',...
    'string','7',...
    'fontsize',12,...
    'position',[5 105 35 20],...
   'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'if k==''0'',',...
        'k='''';,',...
        'end,',...
        'k=[k,''7''];,',...
        'set(e1,''string'',k);']);
b8=uicontrol('parent',h0,...
    'units','points',...
    'tag','b8',...
    'style','pushbutton',...
    'string','8',...
    'fontsize',12,...
    'position',[45 105 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'if k==''0'',',...
        'k='''';,',...
        'end,',...
        'k=[k,''8''];,',...
        'set(e1,''string'',k);']);
b9=uicontrol('parent',h0,...
    'units','points',...
    'tag','b9',...
    'style','pushbutton',...
    'string','9',...
    'fontsize',12,...
    'position',[85 105 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'if k==''0'',',...
        'k='''';,',...
        'end,',...
        'k=[k,''9''];,',...
        'set(e1,''string'',k);']);
b12=uicontrol('parent',h0,...
    'units','points',...
    'tag','b12',...
    'style','pushbutton',...
    'string','-',...
    'fontsize',12,...
    'position',[125 105 35 20],...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'i=i+1;,',...
        'if i==1,',...
        'm=str2num(k);,',...
        'set(e1,''string'',''0'');,',...
        'end,',...
        'if i>1,',...
        'k=get(e1,''string'');,',...
        'if g==''+'',',...
        'm=m+str2num(k);,',...
        'end,',...
        'if g==''-'',',...
        'm=m-str2num(k);,',...
        'end,',...
        'if g==''*'',',...
        'm=m*str2num(k);,',...
        'end,',...
        'if g==''/'',',...
        'if k==''0'',',...
        'errordlg(''除数不能为0'');,',...
        'end,',...
        'm=m/str2num(k);,',...
        'end,',...
        'set(e1,''string'',num2str(m));,',...
        'i=1;,',...
        'end,',...
        'k=''0'';,',...
        'g=''-'';']);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'horizontalalignment','right',...
    'fontsize',12,...
    'string','0',...
    'position',[45 135 115 20],...
    'backgroundcolor',[1 1 1]);
k=get(e1,'string');
i=0;
m=0;
实例63:字母统计

h0=figure('toolbar','none',...
    'position',[200 150 350 200],...
    'name','实例63');
choose=1;
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'backgroundcolor',[1 1 1],...
    'min',0,...
    'max',2,...
    'fontsize',12,...
    'horizontalalignment','left',...
    'position',[20 20 120 100]);
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','请输入字母(大小写皆可):',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 125 120 15]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','开始统计',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[180 100 60 20],...
    'callback',[...
        's=get(e1,''string'');,',...
        'n=length(s);,',...
        'jb=0;,',...
        'jl=0;,',...
        'for i=1:n,',...
        'if (abs(s(i))>64)&(abs(s(i))<91),',...
        'jb=jb+1;,',...
        'end,',...
        'if (abs(s(i))>96)&(abs(s(i))<123),',...
        'jl=jl+1;,',...
        'end,',...
        'end,',...
        'j=jb+jl;,',...
        'if choose==1,',...
        'msgbox([''共有字母'',num2str(j),''个!'',''其中大写字母'',num2str(jb),''个!''],''统计结果''),',...
        'end,',...
        'if choose==2,',...
        'msgbox([''共有字母'',num2str(j),''个!'',''其中小写字母'',num2str(jl),''个!''],''统计结果'');,',...
        'end']);
u1=uimenu('parent',h0,...
    'label','字母分类',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'tag','u1');
u11=uimenu('parent',u1,...
    'label','大写字母',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'tag','u11',...
    'checked','on',...
    'callback',[...
        'set(u11,''checked'',''on'');,',...
        'set(u12,''checked'',''off'');,',...
        'choose=1;']);
u12=uimenu('parent',u1,...
    'label','小写字母',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'tag','u12',...
     'callback',[...
        'set(u12,''checked'',''on'');,',...
        'set(u11,''checked'',''off'');,',...
        'choose=2;']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','清除',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[180 60 60 20],...
    'callback','set(e1,''string'','''')');
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[180 20 60 20],...
    'callback','close');
实例64:图形的几何操作

h0=figure('toolbar','none',...
    'position',[200 150 300 150],...
    'name','实例64');
now=fix(clock);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'backgroundcolor',[1 1 1],...
    'horizontal','right',...
    'fontsize',12,...
    'position',[20 80 30 20],...
    'string',num2str(now(1)));
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','年',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'fontsize',14,...
    'position',[55 80 20 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'backgroundcolor',[1 1 1],...
    'horizontal','right',...
    'fontsize',12,...
    'position',[80 80 30 20],...
    'string',num2str(now(2)));
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','月',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'fontsize',14,...
    'position',[115 80 20 20]);
e3=uicontrol('parent',h0,...
    'units','points',...
    'tag','e3',...
    'style','edit',...
    'horizontal','right',...
    'backgroundcolor',[1 1 1],...
    'fontsize',12,...
    'position',[140 80 30 20],...
    'string',num2str(now(3)));
t3=uicontrol('parent',h0,...
    'units','points',...
    'tag','t3',...
    'style','text',...
    'string','日',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'fontsize',14,...
    'position',[175 80 20 20]);
e4=uicontrol('parent',h0,...
    'units','points',...
    'tag','e4',...
    'style','edit',...
    'backgroundcolor',[1 1 1],...
    'horizontal','right',...
    'fontsize',12,...
    'position',[20 30 100 20],...
    'string',[num2str(now(4)),':',num2str(now(5)),':',num2str(now(6))]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','关闭',...
    'fontsize',12,...
    'position',[150 30 50 20],...
    'callback',[...
        'k=1;,',...
        'close']);
k=0;
while find(get(0,'children'))==h0
    now1=fix(clock)
    set(e1,'string',num2str(now1(1)));
    set(e2,'string',num2str(now1(2)));
    set(e3,'string',num2str(now1(3)));
    set(e4,'string',[num2str(now1(4)),':',num2str(now1(5)),':',num2str(now1(6))]);
    pause(1)
    if k==1
        break
    end
end
实例65:时间计算器

h0=figure('toolbar','none',...
    'position',[200 150 300 250],...
    'name','实例65');
huidiao=[...
        'k=0;,',...
        'fyear=str2num(get(e1,''string''));,',...
        'fmonth=str2num(get(e2,''string''));,',...
        'fday=str2num(get(e3,''string''));,',...
        'syear=str2num(get(e4,''string''));,',...
        'smonth=str2num(get(e5,''string''));,',...
        'sday=str2num(get(e6,''string''));,',...
        'month=[0 31 28 31 30 31 30 31 31 30 31 30 31];,',...
        'k=fix(fyear/4);,',...
        'if rem(fyear,4)==0,',...
        'month(3)=29;,',...
        'else,',...
        'k=k+1;,',...
        'month(3)=28;,',...
        'end,',...
        'sum=0;,',...
        'for i=1:fmonth,',...
        'sum=sum+month(i);,',...
        'end,',...
        'fdday=fyear*365+sum+fday+k;,',...
        'l=fix(syear/4);,',...
        'if rem(syear,4)==0,',...
        'month(3)=29;,',...
        'else,',...
        'l=l+1;,',...
        'month(3)=28;,',...
        'end,',...
        'ssum=0;,',...
        'for i=1:smonth,',...
        'ssum=ssum+month(i);,',...
        'end,',...
        'sdday=syear*365+ssum+sday+l;,',...
        'dday=abs(fdday-sdday);,',...
        'set(e7,''string'',[num2str(dday),''天'']);'];
t0=uicontrol('parent',h0,...
    'units','points',...
    'tag','t0',...
    'style','text',...
    'string','开始日期:',...
    'horizontalalignment','right',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[10 160 80 20]);
t8=uicontrol('parent',h0,...
    'units','points',...
    'tag','t8',...
    'style','text',...
    'string','结束日期:',...
    'horizontalalignment','right',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[115 160 80 20]);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[20 130 50 20]);
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','年',...
    'horizontalalignment','left',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[75 130 20 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[20 100 50 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','月',...
    'horizontalalignment','left',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[75 100 20 20]);
e3=uicontrol('parent',h0,...
    'units','points',...
    'tag','e3',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[20 70 50 20]);
t3=uicontrol('parent',h0,...
    'units','points',...
    'tag','t3',...
    'style','text',...
    'string','日',...
    'horizontalalignment','left',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[75 70 20 20]);
e4=uicontrol('parent',h0,...
    'units','points',...
    'tag','e4',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[120 130 50 20]);
t4=uicontrol('parent',h0,...
    'units','points',...
    'tag','t4',...
    'style','text',...
    'string','年',...
    'horizontalalignment','left',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[175 130 20 20]);
e5=uicontrol('parent',h0,...
    'units','points',...
    'tag','e5',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[120 100 50 20]);
t5=uicontrol('parent',h0,...
    'units','points',...
    'tag','t5',...
    'style','text',...
    'string','月',...
    'horizontalalignment','left',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[175 100 20 20]);
e6=uicontrol('parent',h0,...
    'units','points',...
    'tag','e6',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[120 70 50 20]);
t6=uicontrol('parent',h0,...
    'units','points',...
    'tag','t6',...
    'style','text',...
    'string','日',...
    'horizontalalignment','left',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[175 70 20 20]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','计算日期',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 40 50 20],...
    'callback',huidiao);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 10 50 20],...
    'callback','close');
e7=uicontrol('parent',h0,...
    'units','points',...
    'tag','e7',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[120 10 80 20]);
t7=uicontrol('parent',h0,...
    'units','points',...
    'tag','t7',...
    'style','text',...
    'string','两个日期相差:',...
    'horizontalalignment','right',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 30 110 20]);
实例66:数字操作

h0=figure('toolbar','none',...
    'position',[200 150 350 200],...
    'name','实例66');
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'backgroundcolor',[1 1 1],...
    'position',[20 90 80 20],...
    'fontsize',12,...
    'horizontalalignment','right');
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'backgroundcolor',[1 1 1],...
    'position',[160 90 80 20],...
    'fontsize',12,...
    'horizontalalignment','right');
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','初始数值(十进制):',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[15 110 90 20],...
    'fontsize',12,...
    'horizontalalignment','left');
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','转换结果:',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[155 110 90 20],...
    'fontsize',12,...
    'horizontalalignment','left');
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','二进制',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[30 50 50 20],...
    'callback',[...
        'k=get(e1,''string'');,',...
        'k2=str2num(k);,',...
        'bk=dec2bin(k2);,',...
        'set(e2,''string'',num2str(bk));']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','清除',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 50 50 20],...
    'callback',[...
        'set(e1,''string'','''');,',...
        'set(e2,''string'','''');']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','十六进制',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[30 15 50 20],...
    'callback',[...
        'k=get(e1,''string'');,',...
        'k3=str2num(k);,',...
        'hk=dec2hex(k3);,',...
        'set(e2,''string'',num2str(hk));']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 15 50 20],...
    'callback','close');
实例67:图像的块操作

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','实例67');
h1=axes('parent',h0,...
    'position',[0.2 0.45 0.6 0.5],...
    'visible','off');
I=imread('tire.tif');
imshow(I)
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','边沿操作',...
    'position',[30 100 50 20],...
    'callback',[...
        'cla,',...
        'I=imread(''tire.tif'');,',...
        'f=inline(''max(x(:))'');,',...
        'I2=nlfilter(I,[2 2],f);,',...
        'imshow(I2)']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','显示块操作',...
    'position',[100 100 50 20],...
    'callback',[...
        'cla,',...
        'I=imread(''tire.tif'');,',...
        'f=inline(''uint8(round(mean2(x)*ones(size(x))))'');,',...
        'I2=blkproc(I,[6 6],f);,',...
        'imshow(I2)']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','交叠块操作',...
    'position',[170 100 50 20],...
    'callback',[...
        'cla,',...
        'I=imread(''tire.tif'');,',...
        'f=inline(''uint8(round(mean2(x)*ones(size(x))))'');,',...
        'I2=blkproc(I,[6 6],[3 3],f);,',...
        'imshow(I2)']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','关闭',...
    'fontsize',14,...
    'position',[90 50 70 30],...
    'callback','close');
实例68:图形的过滤操作

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','过滤操作');
h1=axes('parent',h0,...
    'position',[0.3 0.45 0.5 0.5],...
    'visible','off');
I=imread('blood1.tif');
imshow(I)
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','均平过滤',...
    'position',[50 120 50 20],...
    'callback',[...
        'cla,',...
        'I=imread(''blood1.tif'');,',...
        'h=fspecial(''average'',6);,',...
        'I2=uint8(round(filter2(h,I)));,',...
        'imshow(I2)']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','Sobel过滤',...
    'position',[150 120 50 20],...
    'callback',[...
        'cla,',...
        'I=imread(''blood1.tif'');,',...
        'h=fspecial(''sobel'');,',...
        'I2=filter2(h,I);,',...
        'imshow(I2,[])']);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','关闭',...
    'position',[85 60 80 30],...
    'callback','close');
实例69:图像的频率操作

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','频率操作');
h1=axes('parent',h0,...
    'position',[0.3 0.45 0.5 0.5],...
    'visible','off');
b=remez(10,[0 0.4 0.6 1],[1 1 0 0]);
h=ftrans2(b);
[H,W]=freqz(b,1,64,'whole');
colormap(jet(64))
plot(W/pi-1,fftshift(abs(H)))
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','频率变换',...
    'position',[30 100 50 20],...
    'callback',[...
        'cla,',...
        'b=remez(10,[0 0.4 0.6 1],[1 1 0 0]);,',...
        'h=ftrans2(b);,',...
        '[H,W]=freqz(b,1,64,''whole'');,',...
        'colormap(jet(64)),',...
        'freqz2(h,[32 32])']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','频率采样一',...
    'position',[100 100 50 20],...
    'callback',[...
        'cla,',...
        'Hd=zeros(11,11);,',...
        'Hd(4:8,4:8)=1;,',...
        '[f1,f2]=freqspace(11,''meshgrid'');,',...
        'mesh(f1,f2,Hd),',...
        'axis([-1 1 -1 1 0 1.2]),',...
        'colormap(jet(64))']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','频率采样二',...
    'position',[170 100 50 20],...
    'callback',[...
        'cla,',...
        'Hd=zeros(11,11);,',...
        'Hd(4:8,4:8)=1;,',...
        'H=fsamp2(Hd);,',...
        'freqz2(h,[32 32]),',...
        'axis([-1 1 -1 1 0 1.2]),',...
        'colormap(jet(64))']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','关闭',...
    'fontsize',15,...
    'position',[80 50 80 30],...
    'callback','close');
实例70:函数变换

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','函数变换');
h1=axes('parent',h0,...
    'position',[0.25 0.45 0.5 0.5],...
    'visible','off');
I=imread('cameraman.tif');
imshow(I)
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','图像压缩',...
    'position',[30 100 50 20],...
    'callback',[...
        'cla,',...
        'I=imread(''cameraman.tif'');,',...
        'I2=im2double(I);,',...
        'imshow(I2)']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','图像解压',...
    'position',[100 100 50 20],...
    'callback',[...
        'cla,',...
        'I=imread(''cameraman.tif'');,',...
        'I=im2double(I);,',...
        'T=dctmtx(8);,',...
        'B=blkproc(I,[8 8],''P1*x*P2'',T,T'');,',...
        'mask=[1 1 1 1 0 0 0 0;,',...
              '1 1 1 0 0 0 0 0;,',...
              '1 1 0 0 0 0 0 0;,',...
              '1 0 0 0 0 0 0 0;,',...
              '0 0 0 0 0 0 0 0;,',...
              '0 0 0 0 0 0 0 0;,',...
              '0 0 0 0 0 0 0 0;,',...
              '0 0 0 0 0 0 0 0];,',...
        'B2=blkproc(B,[8 8],''P1.*x'',mask);,',...
        'I2=blkproc(B2,[8 8],''P1*x*P2'',T'',T);,',...
        'imshow(I2)']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','线条解析',...
    'position',[170 100 50 20],...
    'callback',[...
        'cla,',...
        'I=imread(''cameraman.tif'');,',...
        'BW=edge(I);,',...
        'imshow(BW)']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','关闭',...
    'fontsize',15,...
    'position',[80 50 80 30],...
    'callback','close');
实例71:RADON函数变换

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','实例71');
h1=axes('parent',h0,...
    'position',[0.3 0.45 0.5 0.5],...
    'visible','off');
P=phantom(256);
imshow(P)
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','变换一',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[30 100 50 20],...
    'callback',[...
        'cla,',...
        'k=1;,',...
        'theta1=0:10:170;,',...
        'R1=radon(P,theta1);,',...
        'imagesc(R1),',...
        'colormap(hot),',...
        'colorbar']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','变换二',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 100 50 20],...
    'callback',[...
        'cla,',...
        'k=2;,',...
        'theta2=0:5:175;,',...
        'R2=radon(P,theta2);,',...
        'imagesc(R2),',...
        'colormap(hot),',...
        'colorbar']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','变换三',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 100 50 20],...
    'callback',[...
        'cla,',...
        'k=3;,',...
        'theta3=0:2:178;,',...
        'R3=radon(P,theta3);,',...
        'imagesc(R3),',...
        'colormap(hot),',...
        'colorbar']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'style','pushbutton',...
    'string','原始图像',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[50 50 70 30],...
    'callback',[...
        'cla,',...
        'if k==1,',...
        'I1=iradon(R1,10);,',...
        'imshow(I1),',...
        'end,',...
        'if k==2,',...
        'I2=iradon(R2,5);,',...
        'imshow(I2),',...
        'end,',...
        'if k==3,',...
        'I3=iradon(R3,2);,',...
        'imshow(I3),',...
        'end']);        
b5=uicontrol('parent',h0,...
    'units','points',...
    'tag','b5',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[150 50 70 30],...
    'callback','close');



山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
2008-5-15 08:31
查看资料  发短消息 网志   编辑帖子  回复  引用回复
plp626
银牌会员

钻石会员


积分 2278
发帖 1020
注册 2007-11-19
状态 离线
『第 3 楼』:  

实例72:图像分析(1)

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','实例72');
h1=axes('parent',h0,...
    'position',[0.25 0.45 0.5 0.5],...
    'visible','off');
I=imread('rice.tif');
imshow(I)
k=0;
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','图像轮廓图',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 100 60 20],...
    'callback',[...
        'cla,',...
        'k=1;,',...
        'I=imread(''rice.tif'');,',...
        'imcontour(I)']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','SOBEL边界图',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 100 60 20],...
    'callback',[...
        'cla,',...
        'k=2;,',...
        'I=imread(''rice.tif'');,',...
        'BW=edge(I,''sobel'');,',...
        'imshow(BW)']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','CANNY边界图',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[180 100 60 20],...
    'callback',[...
       'cla,',...
        'k=3;,',...
        'I=imread(''rice.tif'');,',...
        'BW=edge(I,''canny'');,',...
        'imshow(BW)']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'style','pushbutton',...
    'string','灰度调整',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 50 60 20],...
    'callback',[...
        'cla,',...
        'k=4;,',...
        'I=imread(''rice.tif'');,',...
        'J=imadjust(I,[0.15 0.9],[0 1]);,',...
        'imshow(J,64)']);
b5=uicontrol('parent',h0,...
    'units','points',...
    'tag','b5',...
    'style','pushbutton',...
    'string','图像柱状图',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[180 50 60 20],...
    'callback',[...
        'if k==0,',...
        'figure,',...
        'imhist(I,64),',...
        'end,',...
        'if k==1,',...
        'imhist(I,64),',...
        'end,',...
        'if k==2,',...
        'imhist(BW,64),',...
        'end,',...
        'if k==3,',...
        'imhist(BW,64),',...
        'end,',...
        'if k==4,',...
        'imhist(J),',...
        'end']);
b6=uicontrol('parent',h0,...
    'units','points',...
    'tag','b6',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 50 60 20],...
    'callback','close');
实例73:过滤图像

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','实例73');
h1=axes('parent',h0,...
    'position',[0.25 0.45 0.5 0.5],...
    'visible','off');
I=imread('eight.tif');
imshow(I)
u1=uimenu('parent',h0,...
    'tag','u1',...
    'label','添加噪声',...
    'backgroundcolor',[0.75 0.75 0.75]);
u11=uimenu('parent',u1,...
    'tag','u11',...
    'label','SALT&PEPPER噪声',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'set(u11,''checked'',''on'');,',...
        'set(u12,''checked'',''off'');,',...
        'cla,',...
        'I=imnoise(I,''salt & pepper'',0.02);,',...
        'imshow(I)']);
u12=uimenu('parent',u1,...
    'tag','u12',...
    'label','GAUSSIAN噪声',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'callback',[...
        'set(u12,''checked'',''on'');,',...
        'set(u11,''checked'',''off'');,',...
        'cla,',...
        'I=imnoise(I,''gaussian'',0,0.005);,',...
        'imshow(I)']);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','均平过滤',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[30 100 50 20],...
    'callback',[...
        'cla,',...
        'J=filter2(fspecial(''average'',3),I)/255;,',...
        'imshow(J)']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','中值过滤',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 100 50 20],...
    'callback',[...
        'cla,',...
        'J=medfilt2(I,[3 3]);,',...
        'imshow(J)']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','自适应过滤',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 100 50 20],...
    'callback',[...
        'cla,',...
        'J=wiener2(I,[5 5]);,',...
        'imshow(J)']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'style','pushbutton',...
    'string','关闭',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[90 50 70 30],...
    'callback','close');
实例74:图像的区域处理

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','实例74');
h1=axes('parent',h0,...
    'position',[0.25 0.45 0.5 0.5],...
    'visible','off');
I=imread('trees.tif');
imshow(I)
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','区域过滤一',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[30 100 50 20],...
    'callback',[...
        'cla,',...
        'I=imread(''trees.tif'');,',...
        'imshow(I),',...
        'BW=roipoly;,',...
        'h=fspecial(''unsharp'');,',...
        'I2=roifilt2(h,I,BW);,',...
        'imshow(I2)']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','区域过滤二',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 100 50 20],...
    'callback',[...
        'cla,',...
        'BW=imread(''text.tif'');,',...
        'f=inline(''imadjust(x,[],[],0.01)'');,',...
        'I2=roifilt2(I,BW,f);,',...
        'imshow(I2)']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','区域填充',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 100 50 20],...
    'callback',[...
        'cla,',...
        'load trees,',...
        'I=ind2gray(X,map);,',...
        'imshow(I),',...
        'I2=roifill;,',...
        'imshow(I2)']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[90 50 70 30],...
    'callback','close');
实例75:图像的颜色处置

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','实例75');
h1=axes('parent',h0,...
    'position',[0.12 0.45 0.75 0.5],...
    'visible','off');
I=imread('flowers.tif');
imshow(I)
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','减少颜色',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[30 100 50 20],...
    'callback',[...
        'cla,',...
        '[X,map]=imread(''flowers.tif'');,',...
        '[Y,map2]=imapprox(X,map,64);,',...
        'image(Y),',...
        'colormap(map2)']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','颜色抖动',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 100 50 20],...
    'callback',[...
        'cla,',...
        'I=imread(''flowers.tif'');,',...
        '[X,map]=rgb2ind(I,128,''nodither'');,',...
        'imshow(X)']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','颜色转换一',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 100 50 20],...
    'callback',[...
        'cla,',...
        'I=imread(''flowers.tif'');,',...
        'Y=rgb2ntsc(I);,',...
        'J=Y(:,:,1);,',...
        'imshow(J)']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 50 50 20],...
    'callback','close');
b5=uicontrol('parent',h0,...
    'units','points',...
    'tag','b5',...
    'style','pushbutton',...
    'string','颜色转换三',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 50 50 20],...
    'callback',[...
        'cla,',...
        'I=imread(''flowers.tif'');,',...
        'J=rgb2ycbcr(I);,',...
        'imshow(J)']);
b6=uicontrol('parent',h0,...
    'units','points',...
    'tag','b6',...
    'style','pushbutton',...
    'string','颜色转换二',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[30 50 50 20],...
    'callback',[...
        'cla,',...
        'I=imread(''flowers.tif'');,',...
        'J=rgb2hsv(I);,',...
        'imshow(J)']);
实例76:交换显示图像

h0=figure('toolbar','none',...
    'position',[198 56 500 500],...
    'name','实例76');
h1=axes('parent',h0,...
    'position',[0.15 0.5 0.7 0.5],...
    'visible','off');
u1=uimenu('parent',h0,...
    'label','加载图像',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'tag','u1',...
    'callback',[...
        '[X,map]=imread(''800.jpg'',''jpg'');,',...
        'Y=imresize(X,2);,',...
        'image(Y),',...
        'colormap(map),',...
        'axis image,',...
        'camva(camva/2.5),',...
        'disp(''单击鼠标左键点取需要的点''),',...
        'disp(''单击鼠标右键确定最后一个点''),',...
        'while 1,',...
        '[x,y]=ginput(1);,',...
        'if ~strcmp(get(gcf,''selectiontype''),''normal''),',...
        'break,',...
        'end,',...
        'ct=camtarget;,',...
        'dx=x-ct(1);,',...
        'dy=y-ct(2);,',...
        'camdolly(dx,dy,ct(3),''movetarget'',''data''),',...
        'drawnow,',...
        'end']);
u2=uimenu('parent',h0,...
    'label','关闭',...
    'backgroundcolor',[0.753 0.753 0.753],...
    'tag','u2',...
    'callback','close');
实例77:矢量数据的显示

h0=figure('toolbar','none',...
    'position',[198 56 450 468],...
    'name','实例77');
h1=axes('parent',h0,...
    'position',[0.3 0.45 0.5 0.5],...
    'visible','off');
load wind
b1huidiao=[...
        'cla,',...
        'xmin = min(x(:));,',...
        'xmax = max(x(:));,',...
        'ymax = max(y(:));,',...
        'zmin = min(z(:));,',...
        'wind_speed = sqrt(u.^2 + v.^2 + w.^2);,',...
        'hsurfaces = slice(x,y,z,wind_speed,[xmin,100,xmax],ymax,zmin);,',...
        'set(hsurfaces,''FaceColor'',''interp'',''EdgeColor'',''none''),',...
        'hcont = contourslice(x,y,z,wind_speed,[xmin,100,xmax],ymax,zmin);,',...
        'set(hcont,''EdgeColor'',[.7,.7,.7],''LineWidth'',.5),',...
        '[sx,sy,sz] = meshgrid(80,20:10:50,0:5:15);,',...
        'hlines = streamline(x,y,z,y,v,w,sx,sy,sz);,',...
        'set(hlines,''LineWidth'',2,''Color'',''r''),',...
        'view(3),',...
        'daspect([2,2,1]),',...
        'axis tight'];
b2huidiao=[...
        'cla,',...
        'wind_speed = sqrt(u.^2 + v.^2 + w.^2);,',...
        'hiso = patch(isosurface(x,y,z,wind_speed,40));,',...
        'isonormals(x,y,z,wind_speed,hiso),',...
        'set(hiso,''FaceColor'',''red'',''EdgeColor'',''none'');,',...
        'hcap = patch(isocaps(x,y,z,wind_speed,40),''FaceColor'',''interp'',''EdgeColor'',''none'');,',...
        'colormap hsv,',...
        'daspect([1,1,1]);,',...
        '[f verts] = reducepatch(isosurface(x,y,z,wind_speed,30),0.07);,',...
        'h1 = coneplot(x,y,z,u,v,w,verts(:,1),verts(:,2),verts(:,3),3);,',...
        'set(h1,''FaceColor'',''blue'',''EdgeColor'',''none'');,',...
        'xrange = linspace(min(x(:)),max(x(:)),10);,',...
        'yrange = linspace(min(y(:)),max(y(:)),10);,',...
        'zrange = 3:4:15;,',...
        '[cx,cy,cz] = meshgrid(xrange,yrange,zrange);,',...
        'h2 = coneplot(x,y,z,u,v,w,cx,cy,cz,2);,',...
        'set(h2,''FaceColor'',''green'',''EdgeColor'',''none'');,',...
        'axis tight,',...
        'box on,',...
        'camproj perspective,',...
        'camzoom(1.25),',...
        'view(65,45),',...
        'camlight(-45,45),',...
        'lighting phong,',...
        'set(hcap,''AmbientStrength'',.6)'];
b1=uicontrol('parent',h0,...
    'style','pushbutton',...
    'units','points',...
    'tag','b1',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','可视化',...
    'position',[50 100 60 20],...
    'callback',b1huidiao);
b2=uicontrol('parent',h0,...
    'style','pushbutton',...
    'units','points',...
    'tag','b2',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','锥形图',...
    'position',[200 100 60 20],...
    'callback',b2huidiao);
b3=uicontrol('parent',h0,...
    'style','pushbutton',...
    'units','points',...
    'tag','b3',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'string','关闭',...
    'position',[125 60 60 20],...
    'callback','close');
实例78:图像分析(2)

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','实例78');
h1=axes('parent',h0,...
    'position',[0.25 0.45 0.5 0.5],...
    'visible','off');
load imdemos flower
imshow(flower)
colormap(copper)
n=size(X,1);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','轮廓图',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[30 100 50 20],...
    'callback',[...
        'cla,',...
        '[X,map]=imread(''flowers.tif'');,',...
        'X=double(flower);,',...
        'X=(0.25/256)*X;,',...
        'C=copper(35);,',...
        'set(gca,''colororder'',C(21:35,:),''box'',''on'');,',...
        'imcontour(X,3);,',...
        'axis([1 n 1 n]),',...
        'axis(''ij''),',...
        'axis(''square'')']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','伪彩图',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 100 50 20],...
    'callback',[...
        'cla,',...
        'D=-del2(X);,',...
        'pcolor(D),',...
        'axis([1 n 1 n]),',...
        'axis(''ij''),',...
        'shading(''flat'')']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','3D表面图',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 100 50 20],...
    'callback',[...
        'cla,',...
        'D=-del2(X);,',...
        'surf(X,D),',...
        'colormap(copper),',...
        'axis([1 n 1 n 0 1]),',...
        'axis(''ij''),',...
        'shading(''flat''),',...
        'view(-20,75);']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[80 50 80 30],...
    'callback','close');
实例79:图像逻辑操作

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','实例79');
h1=axes('parent',h0,...
    'position',[0.25 0.45 0.5 0.5],...
    'visible','off');
load imdemos bacteria
imshow(bacteria)
k1=~(bacteria>100);
k2=filter2(fspecial('laplacian'),bacteria);
k3=(k2>-4)&k1;
k4=erode(k1)&(k3==0);
[r,c]=find(k4);
k5=bwselect(k1,c,r);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','二值分割图',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[30 110 50 20],...
    'callback',[...
        'cla,',...
        'imshow(k1)']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','滤波结果图',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 110 50 20],...
    'callback',[...
        'cla,',...
        'imshow(k2)']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','阈值化图',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 110 50 20],...
    'callback',[...
        'cla,',...
        'imshow(k3)']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'style','pushbutton',...
    'string','目标的核',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[30 60 50 20],...
    'callback',[...
        'cla,',...
        'imshow(k4)']);
b5=uicontrol('parent',h0,...
    'units','points',...
    'tag','b5',...
    'style','pushbutton',...
    'string','目标分割图',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 60 50 20],...
    'callback',[...
        'cla,',...
        'imshow(k5)']);
b6=uicontrol('parent',h0,...
    'units','points',...
    'tag','b6',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 60 50 20],...
    'callback','close');
实例80:进度条的使用

h0=figure('toolbar','none',...
    'position',[198 56 350 450],...
    'name','实例80');
h1=axes('parent',h0,...
    'position',[0.25 0.45 0.6 0.5],...
    'visible','off');

I=imread('flowers.tif');
imshow(I)
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','转换',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[50 80 60 25],...
    'callback',[...
        'handlek=waitbar(0,''initializing......'');,',...
        'pause(0.5),',...
        'i=1;,',...
        'while  i<=100,',...
        'waitbar(i/100,handlek,[num2str(i),''%finished''],handlek),',...
        'i=i+1;,',...
        'pause(0.05),',...
        'end,',...
        'pause(1.5),',...
        'cla,',...
        'delete(handlek),',...
        'Y=rgb2ntsc(I);,',...
        'J=Y(:,:,1);,',...
        'imshow(J)']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[150 80 60 25],...
    'callback','close');
例81:MRI数据的显示

load mri
D = squeeze(D);
h0=figure('toolbar','none',...
    'position',[198 56 450 468],...
    'name','实例81');
h1=axes('parent',h0,...
    'position',[0.3 0.45 0.5 0.5],...
    'visible','off');
image_num = 8;
image(D(:,:,image_num))
axis image
colormap(map)
x = xlim;
y = ylim;
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[50 100 60 20],...
    'string','二维图',...
    'callback',[...
        'cla,',...
        'contourslice(D,[],[],image_num),',...
        'axis ij,',...
        'xlim(x),',...
        'ylim(y),',...
        'daspect([1,1,1]),',...
        'colormap(''default'')']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 100 60 20],...
    'string','三维图',...
    'callback',[...
        'cla,',...
        'phandles = contourslice(D,[],[],[1,12,19,27],8);,',...
        'view(3);,',...
        'axis tight,',...
        'set(phandles,''LineWidth'',2)']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[50 50 60 20],...
    'string','立体图',...
    'callback',[...
        'cla,',...
        'Ds = smooth3(D);,',...
        'hiso = patch(isosurface(Ds,5),''FaceColor'',[1,.75,.65],''EdgeColor'',''none'');,',...
        'hcap = patch(isocaps(D,5),''FaceColor'',''interp'',''EdgeColor'',''none'');,',...
        'colormap(map),',...
        'view(45,30),',...
        'axis tight,',...
        'daspect([1,1,.4]),',...
        'lightangle(45,30),',...
        'lighting phong,',...
        'isonormals(Ds,hiso),',...
        'set(hcap,''AmbientStrength'',.6),',...
        'set(hiso,''SpecularColorReflectance'',0,''SpecularExponent'',50)']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 50 60 20],...
    'string','关闭',...
    'callback','close');
实例82:图像类型转换

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','实例82');
h1=axes('parent',h0,...
    'position',[0.2 0.45 0.5 0.5],...
    'visible','off');
load earth
clims = [10 60];
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','强度图像',...
    'position',[30 120 50 20],...
    'callback',[...
        'cla,',...
        'imagesc(X,clims),',...
        'colormap(gray)']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','索引图像',...
    'position',[100 120 50 20],...
    'callback',[...
        'cla,',...
        'image(X),',...
        'colormap(map),',...
        'axis image']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','真彩图像',...
    'position',[170 120 50 20],...
    'callback',[...
        'cla,',...
        'image(X),',...
        'axis image']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'style','pushbutton',...
    'string','关闭',...
    'position',[100 50 50 20],...
    'callback','close');
实例83:特殊的图像显示技术

h0=figure('toolbar','none',...
    'position',[198 56 350 468],...
    'name','实例83');
h1=axes('parent',h0,...
    'position',[0.25 0.45 0.5 0.5],...
    'visible','off');
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','颜色条',...
    'position',[30 120 50 20],...
    'callback',[...
        'cla,',...
        'I = imread(''plane.jpg'');,',...
        'imshow(I),',...
        'colorbar']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'position',[100 120 50 20],...
    'string','单帧显示',...
    'callback',[...
        'cla,',...
        'load mri,',...
        'imshow(D(:,:,:,7))']);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','动画显示',...
    'position',[30 60 50 20],...
    'callback',[...
        'cla,',...
        'load mri,',...
        'montage(D,map),',...
        'mov=immovie(D,map);,',...
        'colormap(map),',...
        'movie(mov)']);
b4=uicontrol('parent',h0,...
    'units','points',...
    'tag','b4',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','纹理映射',...
    'position',[170 60 50 20],...
    'callback',[...
        'cla,',...
        '[x,y,z] = cylinder;,',...
        'I = imread(''girls.jpg'');,',...
        'warp(x,z,y,I);']);
b5=uicontrol('parent',h0,...
    'units','points',...
    'tag','b5',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','关闭',...
    'position',[100 60 50 20],...
    'callback','close');
b6=uicontrol('parent',h0,...
    'units','points',...
    'tag','b6',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','多帧显示',...
    'position',[170 120 50 20],...
    'callback',[...
        'cla,',...
        'load mri,',...
        'montage(D,map)']);
实例84:图像的几何操作

h0=figure('toolbar','none',...
    'position',[198 56 400 468],...
    'name','实例84');
h1=axes('parent',h0,...
    'position',[0.25 0.45 0.5 0.5],...
    'visible','off');
I=imread('plane.jpg','jpg');
imshow(I)
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','图像旋转',...
    'position',[200 120 50 20],...
    'callback',[...
        'cla,',...
        'k=str2num(get(e1,''string''));,',...
        'I=imread(''plane.jpg'',''jpg'');,',...
        'J=imrotate(I,k,''bilinear'');,',...
        'imshow(J)']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','图像剪切',...
    'position',[200 80 50 20],...
    'callback',[...
        'cla,',...
        'imshow plane.jpg,',...
        'I=imcrop;,',...
        'imshow(I)']);
  b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','pushbutton',...
    'string','关闭',...
    'position',[120 30 50 20],...
    'callback','close');
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','edit',...
    'horizontalalignment','right',...
    'position',[50 80 100 20]);
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'style','text',...
    'string','请输入旋转角度(0~90)度',...
    'fontsize',12,...
    'position',[40 100 130 20]);
实例85:拉个朗日插值

h0=figure('toolbar','none',...
    'position',[200 50 350 450],...
    'name','实例85');
h1=axes('parent',h0,...
    'position',[0.10 0.45 0.8 0.5],...
    'visible','off');
x=0:0.2:2*pi;
y=sin(x);
plot(x,y)
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','拉格朗日插值',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 60 70 20],...
    'callback',[...
        'cla,',...
        'strn=get(e1,''string'');,',...
        'n=str2num(strn);,',...
        'i=1;,',...
        'x=0:0.2:2*pi;,',...
        'for t=0:0.2:2*pi,',...
        'y(i)=sin(t);,',...
        'L(i)=lag(t,n);,',...
        'i=i+1;,',...
        'end,',...
        'plot(x,y,''b*'',x,L,''r-''),',...
        'legend(''sin(x)'',''插值函数'');,',...
        'axis([0 7 -1.5 1.5])']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','误差比较',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 60 70 20],...
    'callback',[...
        'strn=get(e1,''string'');,',...
        'n=str2num(strn);,',...
        'strm=get(e2,''string'');,',...
        'm=str2num(strm);,',...
        'dd=abs(sin(m)-lag(m,n));,',...
        'msgbox([''误差为:'',num2str(dd)],''计算结果'')']);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'fontsize',12,...
    'string','5',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[50 100 40 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'fontsize',12,...
    'string','1.20',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[200 100 40 20]);
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','阶数:',...
    'fontsize',12,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 100 30 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','误差点:',...
    'fontsize',12,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[160 100 40 20]);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 20 60 20],...
    'callback','close');
例86:三次样条插值法

h0=figure('toolbar','none',...
    'position',[200 50 350 450],...
    'name','实例86');
h1=axes('parent',h0,...
    'position',[0.10 0.45 0.8 0.5],...
    'visible','off');
x=0:0.2:2*pi;
y=sin(x);
plot(x,y)
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','三次样条插值',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 60 70 20],...
    'callback',[...
        'y=0,',...
        'sy=0,',...
        'strn1=get(e2,''string'');,',...
        'n1=str2num(strn1);,',...
        'strn2=get(e3,''string'');,',...
        'n2=str2num(strn2);,',...
        'x=n1:0.2:n2;,',...
        'i=1;,',...
        'for t=n1:0.2:n2,',...
        'y(i)=sin(t);,',...
        'sy(i)=san(t,n1,n2);,',...
        'i=i+1;,',...
        'end,',...
        'plot(x,y,''b*'',x,sy,''r-''),',...
        'axis([0 7 -1.5 1.5]),',...
        'legend(''sin(x)'',''N-Hermite插值'')']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','误差比较',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 60 70 20],...
    'callback',[...
        'strdn1=get(e2,''string'');,',...
        'n1=str2num(strdn1);,',...
        'strdn2=get(e3,''string'');,',...
        'n2=str2num(strdn2);,',...
        'strdn=get(e1,''string'');,',...
        'dn=str2num(strdn);,',...
        'dd=abs(sin(dn)-san(dn,n1,n2));,',...
        'msgbox([''误差为:'',num2str(dd)],''计算结果'')']);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'fontsize',12,...
    'string','1.20',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[200 100 40 20]);
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','误差点:',...
    'fontsize',12,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[160 100 40 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'fontsize',12,...
    'string','1.00',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[20 85 40 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','第一节点:',...
    'fontsize',12,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[15 105 50 20]);
e3=uicontrol('parent',h0,...
    'units','points',...
    'tag','e3',...
    'style','edit',...
    'fontsize',12,...
    'string','3.00',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[100 85 40 20]);
t3=uicontrol('parent',h0,...
    'units','points',...
    'tag','t3',...
    'style','text',...
    'string','第二节点:',...
    'fontsize',12,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[95 105 50 20]);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 20 60 20],...
    'callback','close');
实例87:NEWTON插值

h0=figure('toolbar','none',...
    'position',[200 50 350 450],...
    'name','实例87');
h1=axes('parent',h0,...
    'position',[0.10 0.45 0.8 0.5],...
    'visible','off');
x=0:0.2:2*pi;
y=sin(x);
plot(x,y)
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','牛顿插值',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 60 70 20],...
    'callback',[...
        'strn=get(e1,''string'');,',...
        'n=str2num(strn);,',...
        'x=0:0.2:2*pi;,',...
        'i=1;,',...
        'for t=0:0.2:2*pi,',...
        'y(i)=sin(t);,',...
        'ynt(i)=newton(t,n);,',...
        'i=i+1;,',...
        'end,',...
        'plot(x,y,''b*'',x,ynt,''r-''),',...
        'axis([0 7 -1.5 1.5]),',...
        'legend(''sin(x)'',''牛顿插值'')']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','误差比较',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 60 70 20],...
    'callback',[...
        'strn=get(e1,''string'');,',...
        'n=str2num(strn);,',...
        'strdn=get(e2,''string'');,',...
        'dn=str2num(strdn);,',...
        'dd=abs(sin(dn)-newton(dn,n));,',...
        'msgbox([''误差为:'',num2str(dd)],''计算结果'')']);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'fontsize',12,...
    'string','5',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[50 100 40 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'fontsize',12,...
    'string','1.20',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[200 100 40 20]);
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','节点数:(<6)',...
    'fontsize',12,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[10 100 40 30]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','误差点:',...
    'fontsize',12,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[160 100 40 20]);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 20 60 20],...
    'callback','close');
实例88:hermite插值

h0=figure('toolbar','none',...
    'position',[200 50 350 450],...
    'name','实例88');
h1=axes('parent',h0,...
    'position',[0.10 0.45 0.8 0.5],...
    'visible','off');
x=0:0.2:2*pi;
y=sin(x);
plot(x,y)
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','Hermite插值',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 60 70 20],...
    'callback',[...
        'strn1=get(e2,''string'');,',...
        'n1=str2num(strn1);,',...
        'strn2=get(e3,''string'');,',...
        'n2=str2num(strn2);,',...
        'x=0:0.2:2*pi;,',...
        'i=1;,',...
        'for t=0:0.2:2*pi,',...
        'y(i)=sin(t);,',...
        'ynt(i)=hermite(t,n1,n2);,',...
        'i=i+1;,',...
        'end,',...
        'plot(x,y,''b*'',x,ynt,''r-''),',...
        'axis([0 7 -1.5 1.5]),',...
        'legend(''sin(x)'',''Hermite插值'')']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','误差比较',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 60 70 20],...
    'callback',[...
        'strn1=get(e2,''string'');,',...
        'n1=str2num(strn1);,',...
        'strn2=get(e3,''string'');,',...
        'n2=str2num(strn2);,',...
        'dn=str2num(strdn);,',...
        'dd=abs(sin(dn)-hermite(dn,n1,n2));,',...
        'msgbox([''误差为:'',num2str(dd)],''计算结果'')']);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'fontsize',12,...
    'string','1.20',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[200 100 40 20]);
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','误差点:',...
    'fontsize',12,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[160 100 40 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'fontsize',12,...
    'string','1.00',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[20 85 40 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','第一节点:',...
    'fontsize',12,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[15 105 50 20]);
e3=uicontrol('parent',h0,...
    'units','points',...
    'tag','e3',...
    'style','edit',...
    'fontsize',12,...
    'string','3.00',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[100 85 40 20]);
t3=uicontrol('parent',h0,...
    'units','points',...
    'tag','t3',...
    'style','text',...
    'string','第二节点:',...
    'fontsize',12,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[95 105 50 20]);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 20 60 20],...
    'callback','close');
实例89:mewton形式的hermite插值

h0=figure('toolbar','none',...
    'position',[200 50 350 450],...
    'name','实例89');
h1=axes('parent',h0,...
    'position',[0.10 0.45 0.8 0.5],...
    'visible','off');
x=0:0.2:2*pi;
y=sin(x);
plot(x,y)
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','N-Hermite插值',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 60 70 20],...
    'callback',[...
        'strn1=get(e2,''string'');,',...
        'n1=str2num(strn1);,',...
        'strn2=get(e3,''string'');,',...
        'n2=str2num(strn2);,',...
        'x=0:0.2:2*pi;,',...
        'i=1;,',...
        'for t=0:0.2:2*pi,',...
        'y(i)=sin(t);,',...
        'ynh(i)=nhermite(t,n1,n2);,',...
        'i=i+1;,',...
        'end,',...
        'plot(x,y,''b*'',x,ynh,''r-''),',...
        'axis([0 7 -1.5 1.5]),',...
        'legend(''sin(x)'',''N-Hermite插值'')']);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'style','pushbutton',...
    'string','误差比较',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[170 60 70 20],...
    'callback',[...
        'strdn1=get(e2,''string'');,',...
        'n1=str2num(strdn1);,',...
        'strdn2=get(e3,''string'');,',...
        'n2=str2num(strdn2);,',...
        'strdn=get(e1,''string'');,',...
        'dn=str2num(strdn);,',...
        'dd=abs(sin(dn)-nhermite(dn,n1,n2));,',...
        'msgbox([''误差为:'',num2str(dd)],''计算结果'')']);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'fontsize',12,...
    'string','1.20',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[200 100 40 20]);
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','误差点:',...
    'fontsize',12,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[160 100 40 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'fontsize',12,...
    'string','1.00',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[20 85 40 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','第一节点:',...
    'fontsize',12,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[15 105 50 20]);
e3=uicontrol('parent',h0,...
    'units','points',...
    'tag','e3',...
    'style','edit',...
    'fontsize',12,...
    'string','3.00',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[100 85 40 20]);
t3=uicontrol('parent',h0,...
    'units','points',...
    'tag','t3',...
    'style','text',...
    'string','第二节点:',...
    'fontsize',12,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[95 105 50 20]);
b3=uicontrol('parent',h0,...
    'units','points',...
    'tag','b3',...
    'style','pushbutton',...
    'string','关闭',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[100 20 60 20],...
    'callback','close');
实例90:平方根法

h0=figure('toolbar','none',...
    'position',[200 150 450 250]);
h1=axes('parent',h0,...
    'position',[0.05 0.15 0.65 0.6],...
    'visible','off');
I=imread('abmatrix.bmp','bmp');
image(I)
axis off
huidiao=[...
        'a=[1 0 3 0;0 2 1 2;3 1 15 0;0 2 0 4;];,',...
        'b=[1 6 5 8]'';,',...
        'r=[a,b];,',...
        'n=4;,',...
        'tic,',...
        'x=ch(a,b,n);,',...
        'time1=toc;,',...
        'T=num2str(time1);,',...
        'set(e1,''string'',[T,''秒'']);,',...
        'msgbox([''X=['',num2str(x(1)),num2str(x(2)),num2str(x(3)),num2str(x(4)),'']''],''方程组的解'');'];
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','方程组如下:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 150 100 20]);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[290 100 30 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','计算时间:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 125 80 20]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','平方根法',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 60 60 20],...
    'callback',huidiao);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'string','关闭',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 30 60 20],...
    'callback','close');
实例91:gauss消去法

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例91');
h1=axes('parent',h0,...
    'position',[0.05 0.15 0.65 0.6],...
    'visible','off');
I=imread('abmatrix.bmp','bmp');
image(I)
axis off
huidiao=[...
        'a=[1 2 4 1 7;2 3 0 1 8;4 1 7 6 1;1 1 0 2 1;1 3 0 1 1;];,',...
        'b=[15 14 19 5 6]'';,',...
        'r=[a,b];,',...
        'n=5;,',...
        'tic,',...
        'x=gauss(r,n);,',...
        'time1=toc;,',...
        'T=num2str(time1);,',...
        'set(e1,''string'',[T,''秒'']);,',...
        'msgbox([''X=['',num2str(x(1)),num2str(x(2)),num2str(x(3)),num2str(x(4)),num2str(x(5)),'']''],''方程组的解'');'];
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','方程组如下:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 150 100 20]);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[290 100 30 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','计算时间:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 125 80 20]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','GS消去法',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 60 60 20],...
    'callback',huidiao);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'string','关闭',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 30 60 20],...
    'callback','close');
实例92:三角分解法

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例92');
h1=axes('parent',h0,...
    'position',[0.05 0.15 0.65 0.6],...
    'visible','off');
I=imread('abmatrix.bmp','bmp');
image(I)
axis off
huidiao=[...
        'a=[1 2 4 1 7;2 3 0 1 8;4 1 7 6 1;1 1 0 2 1;1 3 0 1 1;];,',...
        'b=[15 14 19 5 6]'';,',...
        'n=5;,',...
        'tic,',...
        'x=dirang(a,b,n);,',...
        'time1=toc;,',...
        'T=num2str(time1);,',...
        'set(e1,''string'',[T,''秒'']);,',...
        'msgbox([''X=['',num2str(x(1)),num2str(x(2)),num2str(x(3)),num2str(x(4)),num2str(x(5)),'']''],''方程组的解'');'];
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','方程组如下:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 150 100 20]);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[270 100 50 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','计算时间:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 125 80 20]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','三角分解法',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 60 60 20],...
    'callback',huidiao);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'string','关闭',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 30 60 20],...
    'callback','close');
实例93:jacobi迭代法

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例93');
h1=axes('parent',h0,...
    'position',[0.05 0.15 0.65 0.6],...
    'visible','off');
I=imread('abmatrix.bmp','bmp');
image(I)
axis off
huidiao=[...
        'a=[1 0 3 0;0 2 1 2;3 1 15 0;0 2 0 4;];,',...
        'b=[1 6 5 8]'';,',...
        'n=4;,',...
        'u=zeros(n,1);,',...
        'tic,',...
        '[x,k]=jac(a,b,n,u);,',...
        'time1=toc;,',...
        'T=num2str(time1);,',...
        'set(e1,''string'',[T,''秒'']);,',...
        'set(e2,''string'',num2str(k));,',...
        'msgbox([''X=['',num2str(x(1)),'' '',num2str(x(2)),'' '',num2str(x(3)),'','',num2str(x(4)),'']''],''方程组的解'');'];
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','方程组如下:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 150 100 20]);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 130 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','计算时间:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 130 50 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 100 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','迭代步数:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 100 50 20]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','Jacobi 迭代法',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 60 60 20],...
    'callback',huidiao);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'string','关闭',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 30 60 20],...
    'callback','close');
实例94:gauss迭代法

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例94');
h1=axes('parent',h0,...
    'position',[0.05 0.15 0.65 0.6],...
    'visible','off');
I=imread('abmatrix.bmp','bmp');
image(I)
axis off
huidiao=[...
        'a=[1 0 3 0;0 2 1 2;3 1 15 0;0 2 0 4;];,',...
        'b=[1 6 5 8]'';,',...
        'n=4;,',...
        'u=zeros(n,1);,',...
        'tic,',...
        '[x,k]=gs(a,b,n,u);,',...
        'time1=toc;,',...
        'T=num2str(time1);,',...
        'set(e1,''string'',[T,''秒'']);,',...
        'set(e2,''string'',num2str(k));,',...
        'msgbox([''X=['',num2str(x(1)),'' '',num2str(x(2)),'' '',num2str(x(3)),'','',num2str(x(4)),'']''],''方程组的解'');'];
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','方程组如下:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 150 100 20]);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 130 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','计算时间:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 130 50 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 100 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','迭代步数:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 100 50 20]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','GS 迭代法',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 60 60 20],...
    'callback',huidiao);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'string','关闭',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 30 60 20],...
    'callback','close');
实例95:sor迭代法

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例95');
h1=axes('parent',h0,...
    'position',[0.05 0.15 0.65 0.6],...
    'visible','off');
I=imread('abmatrix.bmp','bmp');
image(I)
axis off
huidiao=[...
        'a=[1 0 3 0;0 2 1 2;3 1 15 0;0 2 0 4;];,',...
        'b=[1 6 5 8]'';,',...
        'n=4;,',...
        'u=zeros(n,1);,',...
        'tic,',...
        '[x,k]=sor(a,b,n,u);,',...
        'time1=toc;,',...
        'T=num2str(time1);,',...
        'set(e1,''string'',[T,''秒'']);,',...
        'set(e2,''string'',num2str(k));,',...
        'msgbox([''X=['',num2str(x(1)),'' '',num2str(x(2)),'' '',num2str(x(3)),'','',num2str(x(4)),'']''],''方程组的解'');'];
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','方程组如下:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 150 100 20]);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 130 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','计算时间:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 130 50 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 100 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','迭代步数:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 100 50 20]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','SOR 迭代法',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 60 60 20],...
    'callback',huidiao);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'string','关闭',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 30 60 20],...
    'callback','close');
实例96:最速下降法

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例96');
h1=axes('parent',h0,...
    'position',[0.05 0.15 0.65 0.6],...
    'visible','off');
I=imread('abmatrix.bmp','bmp');
image(I)
axis off
huidiao=[...
        'a=[1 0 3 0;0 2 1 2;3 1 15 0;0 2 0 4;];,',...
        'b=[1 6 5 8]'';,',...
        'n=4;,',...
        'u=zeros(n,1);,',...
        'tic,',...
        '[x,k]=cg(a,b,n,u);,',...
        'time1=toc;,',...
        'T=num2str(time1);,',...
        'set(e1,''string'',[T,''秒'']);,',...
        'set(e2,''string'',num2str(k));,',...
        'msgbox([''X=['',num2str(x(1)),'' '',num2str(x(2)),'' '',num2str(x(3)),'','',num2str(x(4)),'']''],''方程组的解'');'];
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','方程组如下:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 150 100 20]);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 130 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','计算时间:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 130 50 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 100 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','迭代步数:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 100 50 20]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','最速下降法',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 60 60 20],...
    'callback',huidiao);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'string','关闭',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 30 60 20],...
    'callback','close');
实例97:共额梯度法

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例97');
h1=axes('parent',h0,...
    'position',[0.05 0.15 0.65 0.6],...
    'visible','off');
I=imread('abmatrix.bmp','bmp');
image(I)
axis off
huidiao=[...
        'a=[1 0 3 0;0 2 1 2;3 1 15 0;0 2 0 4;];,',...
        'b=[1 6 5 8]'';,',...
        'n=4;,',...
        'u=zeros(n,1);,',...
        'tic,',...
        '[x,k]=getd(a,b,n,u);,',...
        'time1=toc;,',...
        'T=num2str(time1);,',...
        'set(e1,''string'',[T,''秒'']);,',...
        'set(e2,''string'',num2str(k));,',...
        'msgbox([''X=['',num2str(x(1)),'' '',num2str(x(2)),'' '',num2str(x(3)),'','',num2str(x(4)),'']''],''方程组的解'');'];
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','方程组如下:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 150 100 20]);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 130 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','计算时间:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 130 50 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 100 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','迭代步数:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 100 50 20]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','共轭梯度法',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 60 60 20],...
    'callback',huidiao);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'string','关闭',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 30 60 20],...
    'callback','close');
实例98:mewton迭代法

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例98');
h1=axes('parent',h0,...
    'position',[0.05 0.15 0.65 0.6],...
    'visible','off');
I=imread('fabmatrix.bmp','bmp');
image(I)
axis off
huidiao=[...
        'n=3;,',...
        'u=zeros(n,1);,',...
        'tic,',...
        '[x,k]=nnewton(u,n);,',...
        'time1=toc;,',...
        'T=num2str(time1);,',...
        'set(e1,''string'',[T,''秒'']);,',...
        'set(e2,''string'',num2str(k));,',...
        'msgbox([''X=['',num2str(x(1)),'' '',num2str(x(2)),'' '',num2str(x(3)),'']''],''方程组的解'');'];
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','非线性方程组如下:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 150 150 20]);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 130 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','计算时间:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 130 50 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 100 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','迭代步数:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 100 50 20]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','Newton 迭代法',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 60 60 20],...
    'callback',huidiao);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'string','关闭',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 30 60 20],...
    'callback','close');
实例99:broyden迭代法

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例99');
h1=axes('parent',h0,...
    'position',[0.05 0.15 0.65 0.6],...
    'visible','off');
I=imread('fabmatrix.bmp','bmp');
image(I)
axis off
huidiao=[...
        'n=3;,',...
        'u=zeros(n,1);,',...
        'tic,',...
        '[x,k]=broyden(u,n);,',...
        'time1=toc;,',...
        'T=num2str(time1);,',...
        'set(e1,''string'',[T,''秒'']);,',...
        'set(e2,''string'',num2str(k));,',...
        'msgbox([''X=['',num2str(x(1)),'' '',num2str(x(2)),'' '',num2str(x(3)),'']''],''方程组的解'');'];
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','非线性方程组如下:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 150 150 20]);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 130 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','计算时间:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 130 50 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 100 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','迭代步数:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 100 50 20]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','Broyden 迭代法',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 60 60 20],...
    'callback',huidiao);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'string','关闭',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 30 60 20],...
    'callback','close');
实例100:逆broyden迭代法

h0=figure('toolbar','none',...
    'position',[200 150 450 250],...
    'name','实例100');
h1=axes('parent',h0,...
    'position',[0.05 0.15 0.65 0.6],...
    'visible','off');
I=imread('fabmatrix.bmp','bmp');
image(I)
axis off
huidiao=[...
        'n=3;,',...
        'u=zeros(n,1);,',...
        'tic,',...
        '[x,k]=fbroyden(u,n);,',...
        'time1=toc;,',...
        'T=num2str(time1);,',...
        'set(e1,''string'',[T,''秒'']);,',...
        'set(e2,''string'',num2str(k));,',...
        'msgbox([''X=['',num2str(x(1)),'' '',num2str(x(2)),'' '',num2str(x(3)),'']''],''方程组的解'');'];
t1=uicontrol('parent',h0,...
    'units','points',...
    'tag','t1',...
    'style','text',...
    'string','非线性方程组如下:',...
    'fontsize',15,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[20 150 150 20]);
e1=uicontrol('parent',h0,...
    'units','points',...
    'tag','e1',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 130 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','计算时间:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 130 50 20]);
e2=uicontrol('parent',h0,...
    'units','points',...
    'tag','e2',...
    'style','edit',...
    'horizontalalignment','right',...
    'backgroundcolor',[1 1 1],...
    'position',[295 100 35 20]);
t2=uicontrol('parent',h0,...
    'units','points',...
    'tag','t2',...
    'style','text',...
    'string','迭代步数:',...
    'fontsize',10,...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[240 100 50 20]);
b1=uicontrol('parent',h0,...
    'units','points',...
    'tag','b1',...
    'style','pushbutton',...
    'string','逆Broyden 迭代法',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 60 70 20],...
    'callback',huidiao);
b2=uicontrol('parent',h0,...
    'units','points',...
    'tag','b2',...
    'string','关闭',...
    'style','pushbutton',...
    'backgroundcolor',[0.75 0.75 0.75],...
    'position',[250 30 70 20],...
    'callback','close');
XOR

function [x,st]=sor(a,b,n,x1)
D=zeros(n,n);
L=zeros(n,n);
U=zeros(n,n);
for i=1:n
    for j=1:n
        if j==i
            D(i,j)=a(i,j);
        end
        if j<i
            L(i,j)=-a(i,j);
        end
        if j>i
            U(i,j)=-a(i,j);
        end
    end
end
opt=oumiga(a);
Bsor=inv(D-opt*L)*[(1-opt)*D+opt*U];
fsor=opt*inv(D-opt*L)*b;
k=1;
x2=Bsor*x1+fsor;
e=x2-x1;
while norm(e,2)>1e-6
    k=k+1;
    x1=x2;
    x2=Bsor*x1+fsor;
    e=x2-x1;
end
x=x2;
st=k;



山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
2008-5-15 08:31
查看资料  发短消息 网志   编辑帖子  回复  引用回复
plp626
银牌会员

钻石会员


积分 2278
发帖 1020
注册 2007-11-19
状态 离线
『第 4 楼』:  


%一个水平,一个表,共(0.995 0.99 0.975 0.95 0.9 0.75 0.25 0.1 0.05 0.025 0.01 0.005)12张表

%变异系数从0.01开始步长为0.005即:0.01:0.005:0.1
function r=main(r)
vectorn=4:7;
vectorv=0.01:0.005:0.1;

n=vectorn;v=vectorv;
fprintf('/** 水平值为r=.2f 的h上侧分位数表 **/\n',r)
fprintf('───');xecho(length(v),'┬');fprintf('\n')
fprintf(' n\\v  ')
for j=1:length(v) fprintf('│%8.3f  ',v(j))
end
fprintf('\n───');xecho(length(v),'┼');fprintf('\n')

for i=1:length(n)    %自由度   
   fprintf('%5.1d ',n(i));
   for j=1:length(v)
      aa=finda(v(j),n(i),r);linjie=sqrt(n(i))/v(j);
%pause
      if aa < linjie
        fprintf('│%9.4f ',aa)   
      else
        fprintf('│*%8.3f ',aa)
      end
      if j==length(v) fprintf('\n')
%fprintf(' 临界值:%8.4f\n',linjie)
      end
   end
end


fprintf('───');xecho(length(v),'┴');fprintf('\n')
%/*------------xecho--------------
function xecho(length,str)
for i=1:length*5
if rem(i,5)==1 fprintf('%s',str)
end
   fprintf('─')
end
%--------------------------------*/




山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
2008-6-29 19:42
查看资料  发短消息 网志   编辑帖子  回复  引用回复
plp626
银牌会员

钻石会员


积分 2278
发帖 1020
注册 2007-11-19
状态 离线
『第 5 楼』:  

───┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────
n\v  │   0.010  │   0.015  │   0.020  │   0.025  │   0.030  │   0.035  │   0.040  │   0.045  │   0.050  │   0.055  │   0.060  │   0.065  │   0.070  │   0.075  │   0.080  │   0.085  │   0.090  │   0.095  │   0.100  
───┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────┼─────
    4 │* 306.880 │* 204.597 │* 153.458 │* 122.778 │* 102.326 │*  87.719 │*  76.766 │*  68.248 │*  61.434 │*  55.861 │*  51.217 │*  47.289 │*  43.923 │*  41.007 │*  38.455 │*  36.205 │*  34.205 │*  32.417 │*  30.808
    5 │* 266.825 │* 177.893 │* 133.431 │* 106.755 │*  88.974 │*  76.275 │*  66.752 │*  59.346 │*  53.423 │*  48.578 │*  44.542 │*  41.127 │*  38.201 │*  35.666 │*  33.449 │*  31.493 │*  29.755 │*  28.201 │*  26.803
    6 │ 242.2118 │ 161.4847 │ 121.1241 │  96.9103 │  80.7697 │  69.2425 │  60.5987 │  53.8769 │  48.5008 │  44.1032 │  40.4396 │  37.3405 │  34.6850 │  32.3844 │  30.3722 │  28.5973 │  27.0203 │  25.6100 │  24.3413
    7 │ 225.4804 │ 150.3305 │ 112.7585 │  90.2177 │  75.1926 │  64.4621 │  56.4157 │  50.1588 │  45.1545 │  41.0611 │  37.6510 │  34.7665 │  32.2948 │  30.1535 │  28.2807 │  26.6289 │  25.1613 │  23.8488 │  22.6681
───┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────┴─────



山外有山,人外有人;低调做人,努力做事。

进入网盘(各种工具)~~ 空间~~cmd学习
2008-6-29 19:44
查看资料  发短消息 网志   编辑帖子  回复  引用回复
523066680
银牌会员

SuperCleaner


积分 2362
发帖 1133
注册 2008-2-2
状态 离线
『第 6 楼』:  

你好牛逼!



综合型编程论坛

我的作品索引
  
2008-7-23 16:29
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (523066680)  编辑帖子  回复  引用回复
feijichang
新手上路





积分 2
发帖 1
注册 2008-9-11
状态 离线
『第 7 楼』:  

太好了 ,谢谢

2008-9-11 00:41
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
qinchun36
高级用户

据说是李先生


积分 609
发帖 400
注册 2008-4-23
状态 离线
『第 8 楼』:  

这么专业!
能问一下你是干什么工作的吗,我的毕业论文就是用MATLAB处理图像,但是现在感觉一点都没有用,还不如PS。。。



┏━━━━━━┓
┃据说是李先生┃
┠──────┨
┃*ntRSS┃
┗━━━━━━┛
2010-3-7 03:15
查看资料  发送邮件  发短消息 网志  OICQ (182484135)  编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: