필터 지우기
필터 지우기

How can I get a stacked bar graph with a single bar?

조회 수: 19 (최근 30일)
David McVea
David McVea 2016년 7월 15일
Hello,
I am trying to get a single bar using the stacked property:
figure; bar([0.2 0.8], 'stacked')
This does not create a single stacked bar, it creates two bars of height 0.2 and 0.8.
A work-around is:
figure;bar([0.2 0.8; 1 1],'stacked'); set(gca,'xlim',[0.5 1.5])
But this seems like a silly thing to have to do.
Does anyone know why the stacked input doesn't seem to work for a single bar?
Thanks.

채택된 답변

Star Strider
Star Strider 2016년 7월 15일
One possibility for a workaround:
v = [0.2 0.8];
figure;
bar(sum(v), 'y')
hold on
bar(v(1), 'b')
hold off
  댓글 수: 6
André Bigalke
André Bigalke 2018년 6월 22일
편집: André Bigalke 2018년 6월 22일
just add 1 line to limit the x axis:
bar([1,2,3,4,5,6,7,8,9,10,11,12,13; nan(1,13)], 'Stacked');
set(gca,'xtick',1);
xlim([0.25 1.75]);
Martijn
Martijn 2019년 1월 9일
Note that if you also actually specify x values and use a NaN there as well, you do not have to tweak the limits and ticks:
bar([1;nan], [1:3; nan(1,3)], 'stacked')

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Daniel
Daniel 2020년 2월 11일
편집: Daniel 2020년 4월 27일
(requires MATLAB 2019b or later)
bar(1,[0.2 0.8], 'stacked')
Use the bar(x,y) synatax instead of bar(y). This way you can control if the bars are grouped.
  댓글 수: 4
Michaela Konstantinou
Michaela Konstantinou 2022년 4월 27일
Do you maybe know how to remove the margins from left anr right? Thanks
Thiago de Aquino Costa Sousa
Thiago de Aquino Costa Sousa 2022년 10월 5일
편집: Thiago de Aquino Costa Sousa 2022년 10월 5일
@Daniel Do you know how to overlap the series instead of summing then? If you see your bar graph it is summing your data series, and stacking them. I would like to have the same graph but with the time series overlapped to highlight the difference between the serires. Thank you.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Graphics Object Properties에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by