Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 谷歌图表:根据线条图中的名称改变颜色_Javascript_Charts_Google Visualization - Fatal编程技术网

Javascript 谷歌图表:根据线条图中的名称改变颜色

Javascript 谷歌图表:根据线条图中的名称改变颜色,javascript,charts,google-visualization,Javascript,Charts,Google Visualization,从这个提琴我试图显示不同的颜色,根据不同的名字说的 'FOO' blue 'BAR' yellow 'BAZ' green ... 它们的值可能会有所不同。。。 所以我的数据看起来像是在家里 [1,'FOO', 5] [2,'BAR', 10] [3,'BAZ', 7] .... .... 因此,颜色将跟随第一个值,但要打印的值将不同。您必须在选项中设置颜色 尝试: 然后,每列都将具有您指定的颜色 例如,这里的第一列是蓝色的,第二列是黄色的,依此类推 JSFIDLE示例已经过时,因为可视化

从这个提琴我试图显示不同的颜色,根据不同的名字说的

'FOO' blue 
'BAR' yellow
'BAZ' green
...
它们的值可能会有所不同。。。 所以我的数据看起来像是在家里

[1,'FOO', 5]
[2,'BAR', 10]
[3,'BAZ', 7]
....
....

因此,颜色将跟随第一个值,但要打印的值将不同。

您必须在选项中设置
颜色

尝试:

然后,每列都将具有您指定的颜色

例如,这里的第一列是蓝色的,第二列是黄色的,依此类推


JSFIDLE示例已经过时,因为可视化API现在允许使用“样式”列角色为各个列指定颜色,这要简单得多。给定一个包含3列(x值、类别、y值)的数据表,可以创建值到颜色的映射,并使用数据视图设置列颜色:

var colorMap = {
    FOO: '#0000ff',
    BAR: '#00ff00',
    BAZ: '#ffff00'
};

var view = new google.visualization.DataView(data);
view.setColumns([0, 2, {
    type: 'string',
    role: 'style',
    calc: function (dt, row) {
        return colorMap[dt.getValue(row, 1)];
    }
}]);

请参阅工作示例:

ok这就是我如何实现的。。但是有没有一种方法可以将一种颜色与一个名称相关联,这样它就不会与另一个名称重复,这意味着FOO=黄色,而蓝色不能与任何其他名称相关联……您是否介意将此答案标记为已接受,以帮助其他有类似问题的用户找到它?
var colorMap = {
    FOO: '#0000ff',
    BAR: '#00ff00',
    BAZ: '#ffff00'
};

var view = new google.visualization.DataView(data);
view.setColumns([0, 2, {
    type: 'string',
    role: 'style',
    calc: function (dt, row) {
        return colorMap[dt.getValue(row, 1)];
    }
}]);