将颜色改为条形图Matlab

时间:2014-11-14 01:38:23

标签: matlab plot bar-chart

我有矩阵A,我制作了一个条形图

A = rand(15,9);
h = bar(A);

现在我想根据下面定义的colorsets“colorset”为每组条形图(A的每一行)着色

colorset = [0   0   1;...
1   0   0;...
0   1   0;...
0   0   0.172413793103448;...
1   0.103448275862069   0.724137931034483;...
1   0.827586206896552   0;...
0   0.344827586206897   0;...
0.517241379310345   0.517241379310345   1;...
0.620689655172414   0.310344827586207   0.275862068965517]

我尝试做类似

的事情
set(get(h,'children'),'cdata', A );
colormap(colorset); 

但没有运气

1 个答案:

答案 0 :(得分:0)

我认为这应该有所帮助:

   for hi = 1:numel(h)
        set(h(hi), 'FaceColor', colorset(hi,:))
   end

之前(原始颜色):

enter image description here

之后(新颜色): enter image description here