How to plot stacked bar over stacked bar ?

조회 수: 5 (최근 30일)
Avijit Paul
Avijit Paul 2025년 3월 11일
댓글: Voss 2025년 3월 12일
Hello All
I have data set with size 12x4x76. 12 Represents 12 months, 4 represents 4 sub groups in each month and 76 represent 76 years. I want to plot x-axis as years and y-axis as Months as bar chart. So for a single bar it will be divided into 12 equal divisions representing the months and each division will be divided into 4 parts, height of each part will be decided by the values. So the it will be like stcked bar over a stacked bar. How to do that, any help will be highly appreciated. Image is attached for the sample plot.

채택된 답변

Voss
Voss 2025년 3월 11일
Maybe something like this:
load Data
tmp = plot_data./sum(plot_data,2);
tmp = reshape(flip(permute(tmp,[2 1 3]),1),[],size(tmp,3));
bar(tmp.','stacked')
N = 12;
yt = linspace(0,N,2*N+1);
ytl = strings(1,2*N+1);
ytl(2:2:end) = string(datetime(0,1:N,1,'Format','MMM'));
set(gca(), ...
'YLim',[0 N], ...
'YTick',yt, ...
'YTickLabels',ytl, ...
'TickDir','out')
  댓글 수: 4
Avijit Paul
Avijit Paul 2025년 3월 12일
Thanks a lot
Voss
Voss 2025년 3월 12일
You're welcome!

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Discrete Data Plots에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by