Круговая диаграмма с использованием необработанных данных

У меня есть 4 типа объектов с метками 1,2,3 и 4.

Теперь у меня есть N объекты в виде вектора Nx1, где каждый элемент соответствует классу объекта.

Итак, если у меня есть 5 объектов, у меня может быть вектор, который выглядит как

D = [1,1,3,4,2]

Я хочу получить круговую диаграмму для данных D. Хитрый способ сделать это:

count_data = zeros(4,1);
for it=1:4
count_data(it) = sum(D==it);
end
pie(count_data)

Есть ли чистый способ сделать это?


person Wyatt    schedule 01.04.2014    source источник


Ответы (1)


Вы можете использовать histc для подсчета вхождений целых чисел (помимо прочего). Вместо вашего цикла for поставьте count_data = histc(D, 1:4).

person buzjwa    schedule 01.04.2014