How to make exceedance curve using histc?

조회 수: 10 (최근 30일)
Faith McColl
Faith McColl 2015년 7월 9일
댓글: Mohammad Abouali 2015년 7월 9일
I am making a histogram with bins of specified ranges, but I want it to be cumulative such that each bin shows the values that are in or greater than that range. I found the function cumsum which cumulatively adds the values so each column shows how many values are in or less than the specified range, but I want to do it the other way. For instance, if my values were 1:10 inclusive, cumsum gives me [1 3 6 10 15 21 28 36 45 55]. What I want is [55 54 52 49 45 40 34 27 19 10]. What function would I use for this?

채택된 답변

Mohammad Abouali
Mohammad Abouali 2015년 7월 9일
편집: Mohammad Abouali 2015년 7월 9일
Just do the cumsum backwards on your histogram output
% generating some data
v=normrnd(0,1,[1,1000]);
% getting the histogram
n=hist(v,100);
% shows how many numbers are equal or less than
cV1=cumsum(n);
% Exceedance curve, shows howmany numbers are equal or greater.
cV2=fliplr(cumsum(fliplr(n)));
% Works on MATLAB R2015a
%cV2=cumsum(n,2,'reverse');
  댓글 수: 2
Faith McColl
Faith McColl 2015년 7월 9일
That worked! Thank you!
Mohammad Abouali
Mohammad Abouali 2015년 7월 9일
You are welcome

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Histograms에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by