gpt4 book ai didi

matlab - 如何在matlab中叠加直方图

转载 作者:行者123 更新时间:2023-12-04 04:57:59 25 4
gpt4 key购买 nike

我有多个直方图,我想将它们叠加在一起,但我不知道该怎么做。我找到了下面的代码,但我不知道如何修改它以在循环上运行,而不仅仅是两个直方图。

data1 = randn(100,1);       % data of one size
data2 = randn(25, 1); % data of another size!

myBins = linspace(-3,3,10); % pick my own bin locations

% Hists will be the same size because we set the bin locations:
y1 = hist(data1, myBins);
y2 = hist(data2, myBins);

% plot the results:
figure(3);
bar(myBins, [y1;y2]');
title('Mixed size result');

enter image description here

或者如果直方图超过 10 或 20,比较直方图的更好方法是什么。

最佳答案

您可以执行以下操作,尽管这不是唯一的方法:

data = cell(1, N);
y = cell(1, N);
yBar = zeros(N, 10);
for i=1:N
data{1, i} = randn(10*round(rand(1,1)), 1);
y{1, i} = hist(data{1, i}, myBins);
yBar(i, :) = y{1, i};
end
yBar = yBar';
figure(3);
bar(myBins, yBar);
title('Mixed size result');

当然,使用 y 单元格不是必须的,我将它留在那里以实际显示正在发生的事情。

关于matlab - 如何在matlab中叠加直方图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16519555/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com