[英]Get bin edges from a histogram by index of the bin
我有一個矩陣m
並繪制第三列的直方圖。 我在前100個bin中搜索峰值,並將頻率設為a
,並將bin的索引設為b
。 現在我需要索引為b
的bin的邊緣。 我怎樣才能得到它們?
nbins = 1000;
histo = histogram(m(:,3),nbins,'Orientation','horizontal');
[a,b] = max(histo.Values(1:100))
我可以想到兩種簡單的方法來做到這一點:
function q41505566
m = randn(10000,5);
nBins = 1000;
% Option 1: using histcounts:
[N,E] = histcounts(m(:,3),nBins);
disp(E(find(N(1:100) == max(N(1:100)),1,'first')+[0 1])); % find() returns the left bin edge
% Option 2: using BinEdges:
histo = histogram(m(:,3),nBins,'Orientation','horizontal');
[a,b] = max(histo.Values(1:100));
disp(histo.BinEdges(b:b+1));
如果您需要有關“技巧”的說明-請這樣說。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.