Bar graph grouped with two y axis

조회 수: 215 (최근 30일)
Shu-An Hsieh
Shu-An Hsieh 2021년 12월 6일
댓글: Adam Danz 2021년 12월 10일
% clc
% clear all
x = categorical({'Filament'; 'Model'});
%y = [0.415047 0.11398; 0.41697 0.013588];
y = [0.415047; 0.41697];
z = [0.11398,0.013588];
bar (x,y,'grouped')
hold on
yyaxis right
%ylim([0.35, 0.45]);
ylabel('Weight (g)');
%err = [0.002542, 0.002192];
%errorbar(A, y, err, '- .', 'MarkerSize', 8)
yyaxis left
%ylim([0, 0.15]);
ylabel('Mass reduction (%)');
%err = [0.003711,0.001355];
%errorbar(A, z, err, '- .', 'MarkerSize', 8)
bar (x,z,'grouped')
hold on
Trying to get a bar graph that share same axis and have two y axis. Tried 'grouped' function but still come out as a stacked bar graph.
  댓글 수: 1
Adam Danz
Adam Danz 2021년 12월 6일
I've formatted your code and produced the resultant figure using the Run feature. What would you like to change about this figure?

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

채택된 답변

Dave B
Dave B 2021년 12월 6일
편집: Dave B 2021년 12월 6일
bar graphs don't collaborate between sides of a yyaxis very well, but you can fake it by padding with zeros:
x = categorical({'Filament'; 'Model'});
y = [0.415047; 0.41697];
z = [0.11398; 0.013588];
nil = [0; 0];
bar(x, [y nil], 'grouped')
ylabel('Mass reduction (%)');
yyaxis right
bar(x, [nil z], 'grouped')
ylabel('Weight (g)');
  댓글 수: 9
Shu-An Hsieh
Shu-An Hsieh 2021년 12월 10일
Thank you so much for the help this is really helpful!
Adam Danz
Adam Danz 2021년 12월 10일
Thanks for the reminder, Dave. I couldn't remember if I had used those newer properties or not but it looks like I did.

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Linear Algebra에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by