X~2分布、t分布和f分布的性质及近似计算
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
以下为三个分布的动画演示程序,直接运行:
function dandn(action)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%
%
% 《X~2分布、t分布和f分布的性质及近似计算》
%
% 制作人:幸玮石岩顾秋容
% All Rights Reserved % 2008.12
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%
%无输入参数时进行初始程序,否则调界面参数
if nargin<1,
action='initialize';
else
%看是哪种分布
data=get(gco,'UserData');
pdflabel=data(4);
%图形显示参数,调试时用
switch pdflabel
case 1
xstart=0; %x轴起始点
width=120; %x轴范围
xdis=30; %x轴刻度间距
lenth=0.24; %y轴范围
ydis=0.03; %y轴刻度间距
speed=0.6; %动画演进速率
case 2
width=6;
xdis=3;
lenth=0.42;
ydis=0.05;
speed=0.5;
case 3
width=2;
xdis=0.5;
lenth=4;
ydis=0.4;
speed=0.8;
end
end
%初始化模块
if strcmp(action,'initialize')
%数据初始化
%分布函数选择
pdflabel=0;
d=inputdlg({'输入分布函数类型:'},'选择分布函数',1,{'x2'});
if strcmp(d,'x2')
pdflabel=1;
elseif strcmp(d,'t')
pdflabel=2;
elseif strcmp(d,'f')
pdflabel=3;
end
%不符合的输入报错
if pdflabel==0
errordlg('分布函数只能选择x2,t与f')
return
end
%整体用户界面建立,图形显示窗口嵌入
figNumber=figure( ...
'Name','Changing of the X~2 destribution function', ...
'NumberTitle','off', ...
'Visible','off');
axes( ...
'Units','normalized', ...
'Visible','off', ...
'Position',[0.06 0.065 0.70 0.9]);
%显示初始现实画面
switch pdflabel
case 1
%初始显示参数
xstart=0; %x轴起始点
width=120; %x轴范围
xdis=30; %x轴刻度间距
lenth=0.24; %y轴范围
ydis=0.03; %y轴刻度间距
%画背景图
plot([xstart xstart+width],[lenth lenth],'b');
hold on
plot([xstart xstart+width],[lenth lenth],'r');
plot([xstart xstart+width],[lenth lenth],'black'); legend('X~2分布','正态分布');
axis([xstart xstart+width 0 lenth]);
grid on
set(gca,'XTick',xstart:xdis:xstart+width);
set(gca,'YTick',0:ydis:lenth);
hold off
%分布函数动画初始参数
m=0;
n=1;
case 2
width=6;
xdis=3;
lenth=0.42;
ydis=0.05;
plot([-width -width width],[0 lenth lenth],'b');
hold on
plot([-width -width width],[0 lenth lenth],'r--'); plot([-width -width width],[0 lenth lenth],'black'); legend('T分布','正态分布');
grid on
axis([-width width 0 lenth]);
set(gca,'XTick',-width:xdis:width);
set(gca,'YTick',0:ydis:lenth);
hold off
m=0;
n=2;
otherwise
width=2;
xdis=0.5;
lenth=4;
ydis=0.4;
plot(width,0,'b');
hold on
plot(width,0,'r');