如何更改 Google 图表 API 中堆叠条形图的部分颜色?

How to change section color of a stacked bar chart in Google Charts API?

The docs 描述如何通过指定样式数据角色列来更改整个条形的颜色。

  var data = google.visualization.arrayToDataTable([
         ['Element', 'Density', { role: 'style' }],
         ['Copper', 8.94, '#b87333'],            // RGB value
         ['Silver', 10.49, 'silver'],            // English color name
         ['Gold', 19.30, 'gold'],
         ['Platinum', 21.45, 'color: #e5e4e2' ], // CSS-style declaration
      ]);

然后,数据表的每个record/item都可以指定一种颜色来代表自己。

但是,如果我要创建堆积条形图怎么办?每个 record/item 的不同部分都有多个值。如何选择每个部分的颜色(基于 columns/attributes 的颜色),而不是为每个项目记录选择颜色?

您可以 fiddle 使用 colors 配置选项:

columnChart.options = {
    ....
    colors: ['steelblue','orange','red']
     ...

}

colors 键与一个数组相关联,其中每个字符串元素指定一种颜色,用于为条形图的各个部分(列属性)着色。更改顺序以获得所需的部分着色。