MATLAB案例 | Copula的密度函数和分布函数图

本文介绍各种类型(Gaussian、t、Gumbel、Clayton、Frank)Copula的密度函数和分布函数图的绘制

完整代码

复制代码
clc
close all
clear

%% ********************计算Copula的密度函数和分布函数图************************
[Udata,Vdata] = meshgrid(linspace(0,1,31));  % 为绘图需要,产生新的网格数据
% 调用copulapdf函数计算网格点上的二元正态Copula密度函数值
Cpdf_norm = copulapdf('Gaussian',[Udata(:), Vdata(:)],0.7);
% 调用copulacdf函数计算网格点上的二元正态Copula分布函数值
Ccdf_norm = copulacdf('Gaussian',[Udata(:), Vdata(:)],0.7);

% 调用copulapdf函数计算网格点上的二元t-Copula密度函数值
Cpdf_t = copulapdf('t',[Udata(:), Vdata(:)],0.7,5);
% 调用copulacdf函数计算网格点上的二元t-Copula分布函数值
Ccdf_t = copulacdf('t',[Udata(:), Vdata(:)],0.7,5);

% 调用copulapdf函数计算网格点上的二元Gumbel-Copula密度函数值
Cpdf_Gumbel = copulapdf('Gumbel',[Udata(:), Vdata(:)],1.5);
% 调用copulacdf函数计算网格点上的二元Gumbel-Copula分布函数值
Ccdf_Gumbel = copulacdf('Gumbel',[Udata(:), Vdata(:)],1.5);

% 调用copulapdf函数计算网格点上的二元Clayton-Copula密度函数值
Cpdf_Clayton = copulapdf('Clayton',[Udata(:), Vdata(:)],1);
% 调用copulacdf函数计算网格点上的二元Clayton-Copula分布函数值
Ccdf_Clayton = copulacdf('Clayton',[Udata(:), Vdata(:)],1);

% 调用copulapdf函数计算网格点上的二元Frank-Copula密度函数值
Cpdf_Frank = copulapdf('Frank',[Udata(:), Vdata(:)],2);
% 调用copulacdf函数计算网格点上的二元Gumbel-Copula分布函数值
Ccdf_Frank = copulacdf('Frank',[Udata(:), Vdata(:)],2);

%% 绘制二元正态Copula的密度函数和分布函数图
% 绘制二元Gaussian-Copula的密度函数和分布函数图
figure(1);  % 新建图形窗口
subplot(1,2,1)
surf(Udata,Vdata,reshape(Cpdf_norm,size(Udata)));  % 绘制二元正态Copula密度函数图
xlabel('U');  % 为X轴加标签
ylabel('V');  % 为Y轴加标签
zlabel('c(u,v)');  % 为z轴加标签
title('二元正态Copula的密度函数')
subplot(1,2,2)
surf(Udata,Vdata,reshape(Ccdf_norm,size(Udata)));  % 绘制二元正态Copula分布函数图
xlabel('U');  % 为X轴加标签
ylabel('V');  % 为Y轴加标签
zlabel('C(u,v)');  % 为z轴加标签
title('二元正态Copula的分布函数')

% 绘制二元t-Copula的密度函数和分布函数图
figure(2);  % 新建图形窗口
subplot(1,2,1)
surf(Udata,Vdata,reshape(Cpdf_t,size(Udata)));  % 绘制二元t-Copula密度函数图
xlabel('U');  % 为X轴加标签
ylabel('V');  % 为Y轴加标签
zlabel('c(u,v)');  % 为z轴加标签
title('二元t-Copula的密度函数')
subplot(1,2,2)
surf(Udata,Vdata,reshape(Ccdf_t,size(Udata)));  % 绘制二元t-Copula分布函数图
xlabel('U');  % 为X轴加标签
ylabel('V');  % 为Y轴加标签
zlabel('C(u,v)');  % 为z轴加标签
title('二元t-Copula的分布函数')

% 绘制二元Gumbel-Copula的密度函数和分布函数图
figure(3);  % 新建图形窗口
subplot(1,2,1)
surf(Udata,Vdata,reshape(Cpdf_Gumbel,size(Udata)));  % 绘制二元t-Copula密度函数图
xlabel('U');  % 为X轴加标签
ylabel('V');  % 为Y轴加标签
zlabel('c(u,v)');  % 为z轴加标签
title('二元Gumbel-Copula的密度函数')
subplot(1,2,2)
surf(Udata,Vdata,reshape(Ccdf_Gumbel,size(Udata)));  % 绘制二元t-Copula分布函数图
xlabel('U');  % 为X轴加标签
ylabel('V');  % 为Y轴加标签
zlabel('C(u,v)');  % 为z轴加标签
title('二元Gumbel-Copula的分布函数')

% 绘制二元Gumbel-Copula的密度函数和分布函数图
figure(4);  % 新建图形窗口
subplot(1,2,1)
surf(Udata,Vdata,reshape(Cpdf_Clayton,size(Udata)));  % 绘制二元t-Copula密度函数图
xlabel('U');  % 为X轴加标签
ylabel('V');  % 为Y轴加标签
zlabel('c(u,v)');  % 为z轴加标签
title('二元Clayton-Copula的密度函数')
subplot(1,2,2)
surf(Udata,Vdata,reshape(Ccdf_Clayton,size(Udata)));  % 绘制二元t-Copula分布函数图
xlabel('U');  % 为X轴加标签
ylabel('V');  % 为Y轴加标签
zlabel('C(u,v)');  % 为z轴加标签
title('二元Clayton-Copula的分布函数')

% 绘制二元Gumbel-Copula的密度函数和分布函数图
figure(5);  % 新建图形窗口
subplot(1,2,1)
surf(Udata,Vdata,reshape(Cpdf_Frank,size(Udata)));  % 绘制二元t-Copula密度函数图
xlabel('U');  % 为X轴加标签
ylabel('V');  % 为Y轴加标签
zlabel('c(u,v)');  % 为z轴加标签
title('二元Frank-Copula的密度函数')
subplot(1,2,2)
surf(Udata,Vdata,reshape(Ccdf_Frank,size(Udata)));  % 绘制二元t-Copula分布函数图
xlabel('U');  % 为X轴加标签
ylabel('V');  % 为Y轴加标签
zlabel('C(u,v)');  % 为z轴加标签
title('二元Frank-Copula的分布函数')

绘制结果





相关推荐
十五年专注C++开发19 分钟前
Oat++: 一个轻量级、高性能、零依赖的 C++ Web 框架
开发语言·c++·web服务·oatpp
陈天伟教授20 分钟前
心电心音同步分析-案例:原型设计一
开发语言·人工智能·python·语言模型·架构
Allen_LVyingbo23 分钟前
量子计算Dirac Notation基本教学—从零基础到读懂量子信息论文(下)
开发语言·人工智能·python·数学建模·量子计算
wjs202431 分钟前
Ruby File 类和方法
开发语言
xyq202434 分钟前
API 类别 - UI 核心
开发语言
Dxy12393102161 小时前
Python路径算法简介
开发语言·python·算法
文慧的科技江湖1 小时前
光储充协同的终极闭环:用SpringCloud微服务打造“发-储-充-用“智能能源网络 - 慧知开源充电桩管理平台
java·开发语言·spring cloud·微服务·能源·充电桩开源平台·慧知重卡开源充电桩平台
東雪木1 小时前
Java学习——内部类(成员内部类、静态内部类、局部内部类、匿名内部类)的用法与底层实现
java·开发语言·学习·java面试
昵称暂无11 小时前
通过 C# 复制 Word 文档、指定段落、指定节
开发语言·c#·word
满满和米兜1 小时前
【Java基础】-I/O-字符流
java·开发语言·python