how to plot a histogram of repeated values in a matrix?

2 views (last 30 days)
I have a matrix like below.
X = [120 2 3 250 60; 4 5 6 120 250; 7 8 3 250 10]
I want to plot a histogram shows the number of times a value is repated in each columns for example in first 120 in repeated 2 times in this matrix 250 is repeated 3 times in this matrix. any solution ?

Accepted Answer

Thorsten
Thorsten on 16 Sep 2015
Edited: Thorsten on 16 Sep 2015
This computes how often each value occurs
[a b c] = unique(X);
[X(b) histc(c, 1:max(c))]
  2 Comments
Niki
Niki on 16 Sep 2015
Edited: Niki on 16 Sep 2015
but my main question is to plot it not to print it.
Thorsten
Thorsten on 16 Sep 2015
I see. Try this:
B = [X(b) histc(c, 1:max(c))];
stem(B(:,2), 'Linewidth', 2, 'Marker', 'none')
set(gca, 'XTickLabel', B(:,1))
axis([0 size(B,1)+1 0 1.1*max(B(:,2))])
box off

Sign in to comment.

More Answers (0)

Tags

Products

Community Treasure Hunt

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

Start Hunting!