Как построить неравные ширины гистограммы с MatLab?
Вопрос
Я хотел бы построить гистограмму с неравными мусорными ведрами (интервалами). MATLAB построить только гистограммы с равными корзинами, как если бы это схема .. !!!
Пожалуйста, помогите мне ... Большое спасибо!
Решение
Вот пример:
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, чтобы определить, какие корзины каждая точка падает внутри.
Затем используйте аккумуляцию, чтобы подсчитать количество элементов в каждом корзине.
Затем используйте бар, чтобы нарисовать прутки выбранной ширины. Или просто создайте патчи данных размеров. Используйте патч для этого.
Или просто просто, просто используйте HIST.
hist(rand(1000,1),[0 .1 .3 .6 1])
Не связан с StackOverflow