无法在条形图上应用颜色图

时间:2019-07-19 13:22:48

标签: matlab

我正在尝试在我的Matlab条形图中应用colormap。如果您阅读了matlab网页上的简短解释,那应该是一件简单的事情,但我仍然做不到。

b = bar(cell2mat(data_plot'))
set(gca, 'YScale', 'log');
ylabel('Some Label');
xlabel('Some Label')  
colormap (bar, copper)

我没有得到copper色彩图,它和以前一样。我还尝试了以下命令:

colormap copper

仍然没有结果。有人可以告诉我,我的错误是什么?

1 个答案:

答案 0 :(得分:2)

正确的用法是

colormap copper

但是结果可能不是您期望的,因为如果您使用这种颜色图,则所有条形图都会是所选图的第一种颜色。

您可以通过使用循环并为条形单独上色来实现我想看到的内容:

y = [1 3 5; 3 2 7; 3 4 2];
fHand = figure;
aHand = axes('parent', fHand);
hold(aHand, 'on')
colors = copper(numel(y));
for i = 1:numel(y)
    bar(i, y(i), 'parent', aHand, 'facecolor', colors(i,:));
end

Output of bar chart