Charts 谷歌可视化-设置饼图切片颜色
我有一个用于饼图的数据表,我需要根据行中的值设置切片的颜色。例如,我有一个按类型(如租赁、现金、财务)划分的汽车销售表,我想为每个表指定一种颜色。在文档中,似乎可以用条形图来实现这一点,但我似乎不能用切片来实现。我尝试了以下方法:Charts 谷歌可视化-设置饼图切片颜色,charts,google-visualization,Charts,Google Visualization,我有一个用于饼图的数据表,我需要根据行中的值设置切片的颜色。例如,我有一个按类型(如租赁、现金、财务)划分的汽车销售表,我想为每个表指定一种颜色。在文档中,似乎可以用条形图来实现这一点,但我似乎不能用切片来实现。我尝试了以下方法: var pieChart = new google.visualization.ChartWrapper({ options : { ... slices: [{color: 'black'}, {color: 'green'}
var pieChart = new google.visualization.ChartWrapper({
options : {
...
slices: [{color: 'black'}, {color: 'green'}, {color: 'red'}]
}
});
颜色得到渲染,但我想为
lease
指定黑色。关于如何实现这一点,您有什么想法吗?切片
数组中的颜色顺序应该与数据表中的行顺序相同
// build slices
var slices = [];
for (var i = 0; i < data.getNumberOfRows(); i++) {
slices.push({
color: colors[data.getValue(i, 0)]
});
}
因此,对于以下行
data.addRows([
['Cash', 5],
['Finance', 20],
['Lease', 15]
]);
对于'Lease'
为黑色,它应该是数组中的最后一种颜色
slices: [{color: 'green'}, {color: 'red'}, {color: 'black'}]
如果行的顺序未知,则可以动态设置颜色 使用对象为颜色创建贴图
// create color map
var colors = {
'Cash': 'green',
'Finance': 'red',
'Lease': 'black'
};
然后根据数据表中的值构建切片数组
// build slices
var slices = [];
for (var i = 0; i < data.getNumberOfRows(); i++) {
slices.push({
color: colors[data.getValue(i, 0)]
});
}
//构建切片
var切片=[];
对于(var i=0;i
请参阅以下工作片段
google.charts.load('current'{
回调:图纸,
软件包:['corechart']
});
函数绘图图(){
var data=new google.visualization.DataTable();
data.addColumn('string','sales');
data.addColumn('number','count');
data.addRows([
[“现金”,5],
[“金融”,20],
[‘租赁’,15]
]);
sort([{column:1,desc:true}]);
//创建颜色贴图
变量颜色={
“现金”:“绿色”,
‘金融’:‘红色’,
“租约”:“黑色”
};
//构建切片
var切片=[];
对于(var i=0;i
切片数组中的颜色顺序应与数据表中的行顺序相同
// build slices
var slices = [];
for (var i = 0; i < data.getNumberOfRows(); i++) {
slices.push({
color: colors[data.getValue(i, 0)]
});
}
因此,对于以下行
data.addRows([
['Cash', 5],
['Finance', 20],
['Lease', 15]
]);
对于'Lease'
为黑色,它应该是数组中的最后一种颜色
slices: [{color: 'green'}, {color: 'red'}, {color: 'black'}]
如果行的顺序未知,则可以动态设置颜色 使用对象为颜色创建贴图
// create color map
var colors = {
'Cash': 'green',
'Finance': 'red',
'Lease': 'black'
};
然后根据数据表中的值构建切片数组
// build slices
var slices = [];
for (var i = 0; i < data.getNumberOfRows(); i++) {
slices.push({
color: colors[data.getValue(i, 0)]
});
}
//构建切片
var切片=[];
对于(var i=0;i
请参阅以下工作片段
google.charts.load('current'{
回调:图纸,
软件包:['corechart']
});
函数绘图图(){
var data=new google.visualization.DataTable();
data.addColumn('string','sales');
data.addColumn('number','count');
data.addRows([
[“现金”,5],
[“金融”,20],
[‘租赁’,15]
]);
sort([{column:1,desc:true}]);
//创建颜色贴图
变量颜色={
“现金”:“绿色”,
‘金融’:‘红色’,
“租约”:“黑色”
};
//构建切片
var切片=[];
对于(var i=0;i
@MoreScratch--请使用投票按钮附近的复选标记将答案标记为已接受,好吗?这将允许我将其他人标记为这一个的副本…嗨,对不起,我以为我接受了这个答案,但我现在不能@MoreScratch,你能帮我们吗?谢谢@请用投票按钮旁边的复选标记将答案标记为已接受,好吗?这将允许我将其他人标记为这一个的副本…嗨,对不起,我以为我接受了这个答案,但我现在不能@MoreScratch,你能帮我们吗?谢谢