📄 prob_tgamma.m
字号:
% prob_tgamma.m
% 绘制两个相关变量的随机分布图形
% 设置概率分布参数
% n数据点个数,nu表示自由度
n=1000;rho=0.9;nu=1;
% 产生多元t分布随机数值矩阵
T=mvtrnd([1,rho;rho 1],nu,n);
% 计算t分布数值的累计概率分布数值
U=tcdf(T,nu);
% 产生两个概率分布的数值
% gaminv为Gamma累计概率数值取反
% tinv为t分布累计概率数值取反
X=[gaminv(U(:,1),3,1) tinv(U(:,2),5)];
% 计算两个直方图的数值
[n1,ctr1]=hist(X(:,1),20);
[n2,ctr2]=hist(X(:,2),20);
% 绘制概率分布图形
subplot(2,2,2);
plot(X(:,1),X(:,2),'.');
axis([0 15 -10 10]);
h1=gca;
title('1000 simulated dependent t and gamma');
xlabel('X1:Gamma(3,1)');
ylabel('X2: t(5)');
% 绘制gamma自变量分布的直方图
subplot(2,2,4);bar(ctr1,-n1,1);
axis([0 15 -max(n1)*1.1 0]);
axis('off');
h2=gca;
% 绘制t分量分布的直方图
subplot(2,2,1);barh(ctr2,-n2,1);
axis([-max(n2)*1.1 0 -10 10]);
axis('off');
h3=gca;
% 设置三个子图的位置
set(h1,'Position',[0.35 0.35 0.55 0.55]);
set(h2,'Position',[0.35 0.1 0.55 0.15]);
set(h3,'Position',[ 0.1 0.35 0.15 0.55]);
colormap([0.8 0.8 1]);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -