matlab条形图:灰色

时间:2017-03-07 04:06:28

标签: matlab bar-chart matlab-figure

我在Matlab中有以下代码,它运行正常,但我无法将图形的颜色更改为灰色

 #include <iostream> 
    #include <math.h>  
    using namespace std;
    void main() 
    { 
        const int N = 100;  
        int i;  
        double x, h, a = -1.0, b = 1.0, y[N+1];  
        h = (b - a)/N; //h=0.02
        for (i = 0, x = a; i <= N; i++, x += h)  
        { 
            if (x == 0) // When x is 0

            {
                cout << x << '\t' << "0.00" << endl;
                continue;
            }
            y[i] = exp(-x*x);  
            cout << x << '\t' << y[i] << endl; 
        }


    }

我尝试了FaceColor功能,但它没有用! 任何帮助都非常感谢。

1 个答案:

答案 0 :(得分:1)

从评论中我发现您错误地使用了FaceColor属性。

你说你试过

bar(y,'FaceColor', 'grey');

这个问题是'grey'不是Matlab中的有效颜色定义。

有三种定义颜色,RGB三元组,短名称和长名称的方法。短名称和长名称非常有限,预定义只有8种颜色。白色,黑色,红色,绿色,蓝色,青色,洋红色和黄色。对于任何其他颜色,您需要将其定义为RGB三元组,它是从0到1的三个元素的向量,表示每个通道的强度。

在你的情况下,灰色是大多数颜色在三个通道上具有相同的强度,因此这应该适合你:

bar(y,'FaceColor', [0.75 0.75 0.75]);

如果您有其他疑问,请查看有关颜色https://www.mathworks.com/help/matlab/ref/colorspec.html

的matlab文档