【问题标题】:Color issues in making positive bar chart values red and negative values blue? MATLAB将正条形图值设为红色和将负值设为蓝色时的颜色问题? MATLAB
【发布时间】:2013-10-05 13:26:13
【问题描述】:

所以我目前确实有一个条形图,它以红色显示正值,以蓝色显示负值,但我的问题是,当条形图显示所有负值或所有正值时,颜色都被弄乱了。以下是我的代码:

dd = Data;
s = sign(dd);
barr = bar(dd); 
set(get(barr,'children'),'cdata',s);  

我也尝试过 SET 'FaceVertexCData'。

谢谢!

【问题讨论】:

    标签: matlab bar-chart


    【解决方案1】:

    你必须定义一些颜色限制

    set(gca, 'CLim', [-1 1]);
    

    没有它,当所有符号为正或负时(例如s = [1 1 1 1]),条形图以绿色绘制,对应于颜色图的平均值。将颜色限制设置为 [-1 1] 会强制 matlab 使用颜色图的极值。例如,您还可以通过将 CLim 设置为 [-10 10] 来更改颜色。

    【讨论】:

      【解决方案2】:

      只需在一个图中制作两个条形图

      x = 1:length(s);
      
      bar( x(s>0), dd(s>0), 'b');
      hold on;
      bar( x(s<0), dd(s<0), 'r');
      

      【讨论】:

        猜你喜欢
        • 2019-10-31
        • 1970-01-01
        • 2011-10-31
        • 1970-01-01
        • 2021-07-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-08-20
        相关资源
        最近更新 更多