我正在使用Matlab(這是個好主意)。如何通過標量乘以直方圖中的頻率
我需要將直方圖的頻率乘以標量值(對於每個bin)。 我已經在similar question中試過這種方法,但它是爲hist而不是直方圖函數定義的。 這是我原來的分佈需要乘以:
此外,當我完成這一部分,我將有更多的直方圖我需要總結成一個直方圖。那麼我該怎麼做?他們可能有不同的範圍。
我正在使用Matlab(這是個好主意)。如何通過標量乘以直方圖中的頻率
我需要將直方圖的頻率乘以標量值(對於每個bin)。 我已經在similar question中試過這種方法,但它是爲hist而不是直方圖函數定義的。 這是我原來的分佈需要乘以:
此外,當我完成這一部分,我將有更多的直方圖我需要總結成一個直方圖。那麼我該怎麼做?他們可能有不同的範圍。
該文檔clearly explains如何複製hist
與histogram
的行爲。
例如:
A = rand(100, 1);
h = histogram(A);
figure
h_new = histogram('BinCounts', h.Values*2, 'BinEdges', h.BinEdges);
生成以下直方圖:
完美。這正是我期待的! – numb
您可以修改Bincounts這樣的:
X = normrnd(0,1,1000,1); % some data
h = histogram(X,3); % histogram with 3 bins
h.BinCounts = h.Values.*[3 5 1]; % scale each bin by factor 3, 5 and 1 respectively
什麼樣的數據,或你的代碼?您可以在直方圖之前對數據嘗試'repmat',然後您將獲得多個相同數據量。 – Adiel
@Adiel目前我只有一個大小的矢量(150877x1),所以我不能在這裏發佈它。我繪製了該矢量的直方圖。現在我想用標量乘以它的頻率。 此外,我將有更多這些向量,我將需要乘以標量。最後,我需要在一個直方圖上總結它們。 – numb
您應該嘗試創建一個最小示例,描述您的方法(向我們展示您的代碼)以及您面臨的問題:[問]。 – Irreducible