how to change the order of plots?

조회 수: 23 (최근 30일)
Chang seok Ma
Chang seok Ma 2021년 12월 5일
편집: Adam Danz 2021년 12월 6일
Hello,
I have a following code
figure(3)
colororder({'b','r'})
yyaxis left
bar(horizon2,data2(:,2),1,'FaceColor',[1 1 1],'EdgeColor','b','LineWidth',2)
hold on
bar(horizon3,data3(:,2),1,'FaceColor',[1 1 1],'EdgeColor','g','LineWidth',2)
hold on
%,'FaceAlpha',0.6
xlabel('Thousands of dollars')
% 2007m12
grid on
yyaxis right
bar(horizon1,data1(:,4),1,'FaceColor',[1 1 1],'EdgeColor','r','LineWidth',2)
then I have a graph as follows
But I want to have green plots over red and blue plots.
Is there anyway I could do this?
Thank you

채택된 답변

Adam Danz
Adam Danz 2021년 12월 5일
편집: Adam Danz 2021년 12월 6일
As of the current Matlab release (R2021b), it is not possible to control the uistack of objects on different sides of a yyaxis. Objects assigned to the right axis will always be on top.
Alternative work-arounds
  • Move the red bars to the left y-axis and the green/blue bars to the right axis.
  • Use plotyy instead (but yyaxis is still much better). See this answer.
  • Use transparency to see overlapping bars. See FaceAlpha and EdgeAlpha properties of bar objects.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Creating, Deleting, and Querying Graphics Objects에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by