MATLAB 中概率密度函数的 3D 图

use*_*583 5 matlab matlab-figure

我想创建我的变量的概率密度函数的 3D 图。我有一个尺寸为 189x10000 的矩阵,其中行对应于时间,列是模拟的结果。有人可以帮助我随时间创建密度图吗?我希望我的情节看起来像这样: 在此处输入图片说明

    A = [1:185]';  % substitute for date vector
    K = linspace( -20, 20, 100);
    f = zeros(185,100);
    xi = zeros(185,100);
    r = normrnd(0,1,[185,10000]);
     for i=1:185

        [f(i,:),xi(i,:)] = ksdensity(r(I,:));

     end
    a = figure;
    meshc(A, K', f')
    datetick('x', 'yyyy')
    view(85, 50)
    set(gca, 'YLim', [-15, 10])
    set(gca, 'XLim', [A(1), A(end)])
    xlabel('Time')
Run Code Online (Sandbox Code Playgroud)

有了这个代码,我得到了这个:

在此处输入图片说明

Mis*_*ous 1

  1. 用密度分布替换随机数。

  2. 如果您想要更精细的网格,请使用更多的点。你的实际数据有10倍,对吧?否则这已经是最好的了;“改进”你的情节,例如平滑你的数据,更多的是数据篡改而不是科学。

Adriaan提供的解决方案。