How to plot contour for gaussian copula (etc.)

From matlab help center, I can generate Gaussian copula random variables and plot it like this:
n = 500;
rng('default') % for reproducibility
U = copularnd('Gaussian',[1 .8; .8 1],n);
plot(U(:,1),U(:,2),'.')
title('{\it\rho} = 0.8')
xlabel('U1')
ylabel('U2')
The question is, how could i plot the "contour plots" of bivariate copula models like this (the right pic):
It may probabilily be marginally normalized, but i don't know how to do it by function "contour".
Thanks for your helping!!

2 件のコメント

Mann Baidi
Mann Baidi 2024 年 2 月 25 日
Hi,
Have you tried 'copulapdf' function? If not, you can refer to the following link:
Mathieu NOE
Mathieu NOE 2024 年 2 月 27 日
you can make a contour plot from scattered data using this Fex submission :

サインインしてコメントする。

回答 (1 件)

Gautam
Gautam 2024 年 8 月 29 日

0 投票

You can use the “copulapdf” function to plot a bivariate gaussian copula pdf and then use the “contour” on these pdf values function for the contour plot.
The code below generates the pdf
u = linspace(0,1,25);
[u1,u2] = meshgrid(u,u);
y = copulapdf('Gaussian',[u1(:),u2(:)],[1 .8; .8 1]);
surf(u1,u2,reshape(y,25,25));
Using the “contour” command on this pdf will give you the contour plot.
contour(reshape(y, 25,25), 15);

カテゴリ

ヘルプ センター および File ExchangeProbability Distributions and Hypothesis Tests についてさらに検索

タグ

質問済み:

2024 年 2 月 25 日

回答済み:

2024 年 8 月 29 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by