Smaller values not seen in bar graph

3 views (last 30 days)
Hi, I want to show boundaries of two variables in bar graph. However, when I add second variable to bar graph, smaller value of first value disappear in bar graph (such as y=7, y=8). I didnt find way to make it appears.
X=[5 4 3];
Y=[1 7 8];
bar(X)
hold on
bar(Y)

Accepted Answer

Chunru
Chunru on 6 Dec 2021
Edited: Chunru on 6 Dec 2021
X=[5 4 3];
Y=[1 7 8];
bar([X; Y]')
figure
bar(X)
hold on
bar(Y, 'FaceAlpha', .5); % transparency
figure
XMin = min(X, Y)';
XMax = max(X, Y)';
bar([XMin, XMax-XMin], 'stacked')
% Idea solution: Plot each bar individually
n = numel(X);
figure; hold on
for i=1:n
if X(i)>Y(i)
bar(i, X(i), 'r');
bar(i, Y(i), 'b');
else
bar(i, Y(i), 'b');
bar(i, X(i), 'r');
end
end
  4 Comments
Chunru
Chunru on 6 Dec 2021
See the updated for an ideal solution.
Gokhan Kayan
Gokhan Kayan on 6 Dec 2021
Edited: Gokhan Kayan on 6 Dec 2021
Oh. The last solution worked perfectly!. Thanks a lot for the help.

Sign in to comment.

More Answers (1)

KSSV
KSSV on 6 Dec 2021
Edited: KSSV on 6 Dec 2021
You can go ahead like this right?
X=[5 4 3];
Y=[1 7 8];
x = 1:3 ;
bar(x,[X;Y])
Or you can try:
bar([X' Y'],'stacked')
  1 Comment
Gokhan Kayan
Gokhan Kayan on 6 Dec 2021
Unfortunately, I dont want them like first way because i will draw line graph too. The graph will be sophisticated. Second graph adds y to x. I dont want summation.

Sign in to comment.

Categories

Find more on Discrete Data Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!