how to change x axis labelling

조회 수: 4 (최근 30일)
sophp
sophp 2020년 5월 4일
답변: Mehmed Saad 2020년 5월 4일
I have this following bar chart. The subsequent graph returns a bar chart with a labelling of 1,2,3,4,5,6 rather than Q3,Q6,Q10,Q15 etc. How do I fix this?
x=categorical({'Q3','Q6','Q10','Q15','Q30','Q50'});
z=[2.891586318,1.99422657,1.907652812,4.71298388,6.007681496,6.718181667;3.229392123,3.36482536,4.089746011,5.204662107,6.761377397,7.978099976];
y=transpose(z);
a=[0.167797,0.314574,0.081018,0,0.116596,0;0,0.173132,0,0.231752,1.15677,1.204734];
errorplus=a;
errorminus=errorplus;
figure;
bar(x,y);
hBar = bar(y, 0.8);
for k1 = 1:size(y,2)
ctr(k1,:) = bsxfun(@plus, hBar(k1).XData, hBar(k1).XOffset');
ydt(k1,:) = hBar(k1).YData;
end
hold on
errorbar(ctr, ydt, errorplus, '.k')
hold off
ylabel('Signal Intensity','FontSize',18)
set(gca,'linewidth',2,'FontSize',14)
ylim([0 10]);
set(gca,'XTickLabel',x)
  댓글 수: 1
Mohammad Sami
Mohammad Sami 2020년 5월 4일
I ran your code on R2020a. I am getting the labels as you wanted. Which version of matlab are you using.

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

채택된 답변

Mehmed Saad
Mehmed Saad 2020년 5월 4일
set(gca,'XTickLabel',x)
This command is working for me
Maybe due to your MATLAB version it is not working for you
Try converting categorical to cell using cellstr
set(gca,'XTickLabel',cellstr(x))

추가 답변 (0개)

카테고리

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

태그

Community Treasure Hunt

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

Start Hunting!

Translated by