MATLAB - 每个条形图的不同颜色和刻度标签的条形图

use*_*950 4 matlab matlab-figure

我希望下面的代码输出是条形图中的4个不同的条形图,每个条形图具有不同的颜色,并且分别带有刻度标签"a","b","c"和"d".颜色很好,但只有第一个标签有'a'标签,其他三个标签没有标签.如何在条形图中实现刻度标记条,同时用不同颜色突出显示它们?我使用的是版本2010b.谢谢!

deneme = [1 2 3 4];
figure;
for i=1:length(deneme)
    if i==1
        colorcode = 'b';
    elseif i==2
        colorcode = 'g';
    elseif i==3
        colorcode = 'r';
    else
        colorcode = 'k';
    end
    bar(i, deneme(i), colorcode);
    hold on;
end
set(gca,'XTickLabel',{'a'; 'b'; 'c'; 'd'})
Run Code Online (Sandbox Code Playgroud)

Lui*_*ndo 6

只需在最后一行之前添加此行:

set(gca,'Xtick',1:4)
Run Code Online (Sandbox Code Playgroud)

或将两条线组合成

set(gca,'Xtick',1:4,'XTickLabel',{'a'; 'b'; 'c'; 'd'})
Run Code Online (Sandbox Code Playgroud)

不知何故,在你的代码中,只有一个滴答,所以所有标签,但第一个没有勾选.创建这些滴答set(gca,'xtick',...)解决问题.