Как построить гистограммы неравной ширины с помощью Matlab?
Я хотел бы построить гистограмму с неравными ячейками (интервалами)..Matlab строит только гистограммы с равными ячейками, как будто это диаграмма..!!!
пожалуйста, помогите мне...спасибо большое!!
3 ответов
вот пример:
x = randn(100,1)*3; %# some random data
e = [-10 -5 -3 -1 1 2 3 20]; %# edges of intervals: e(i) <= x < end(i+1)
c = histc(x,e); %# get count in each interval
bar(e, c, 'histc') %# bar plot
set(gca, 'xlim',[e(1) e(end)])
вы можете создать свой собственный инструмент гистограммы, чтобы создать пользовательский гистограммы, как вам нравится.
используйте histc, чтобы определить, какие ячейки каждая точка попадает внутрь.
затем используйте accumarray для подсчета количества элементов в каждой ячейке.
затем используйте bar для рисования баров выбранной ширины. Или просто создать заплаты заданных размеров. Использовать патч для этого.
или проще говоря, просто используйте ТСС.
hist(rand(1000,1),[0 .1 .3 .6 1])