MATLAB Answers

# Bar graphs with two sets of different sizes

47 views (last 30 days)
Flo on 5 May 2016
Edited: Flo on 6 May 2016
Hi everyone,
I am trying to plot one bar graph with using twos sets of different sizes.
The following code works fine if the datasets are equal in size, but doesnt if not.
h(:,1)=one;
h(:,2)=two;
[y,x]=hist(h);
bar(x,y, 'group');
title('Area comparison');
xlabel('Area'); % x-axis label
ylabel('Frequency'); % y-axis label
legend('XZ','YZ');
saveas(gcf,mypath);
one and two are my datasets.
would you know if there is a way of doing through matlab?
Thanks for your help :)
Flo
##### 0 CommentsShowHide -1 older comments

Sign in to comment.

### Accepted Answer

Mike Garrity on 5 May 2016
One simple way is this:
none = length(one);
ntwo = length(two);
h = nan(max(none,ntwo),2);
h(1:none,1)=one;
h(1:ntwo,2)=two;
[y,x] = hist(h);
bar(x,y, 'group');
##### 1 CommentShowHide None
Flo on 6 May 2016
Thank you Mike.
It seems to work fine, but for one of my calculation I get one really weird result. At the bin number 160 the blue bar seems to reach to top of the graph. do you think it is due to the code? Sign in to comment.

### Community Treasure Hunt

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

Start Hunting!