【MATLAB例】Plot Kernel Density Estimate of Bivariate Data

Create a two-column vector of points at which to evaluate the density.

gridx1 = -0.25:.05:1.25;
gridx2 = 0:.1:15;
[x1,x2] = meshgrid(gridx1, gridx2);
x1v = x1(:);
x2v = x2(:);
pts = [x1v x2v];

Generate a 30-by-2 matrix containing random numbers from a mixture of bivariate normal distributions.

rng('default')  % For reproducibility
x = [0+.5*rand(150,1) 5+2*rand(150,1);
            .75+.25*rand(75,1) 8.75+rand(75,1)];
n = size(x,1);
figure; scatter(x(:,1),x(:,2))

在这里插入图片描述

Plot the estimated density of the sample data.

[f,xi,bw] = ksdensity(x,pts,"Function","pdf","Kernel","epanechnikov");
figure; surf(x1, x2, reshape(f,size(x1,1),size(x1,2)));
set(gca, 'YDir', 'reverse')
colormap("turbo")
axis tight

在这里插入图片描述

nbins = 20;

figure;
h = histogram2(x(:,1), x(:,2), nbins, 'Normalization', 'pdf', 'FaceColor', 'flat');
set(gca, 'YDir', 'reverse')

colormap("winter")
axis tight
zlabel('Probability Density')

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值