Javascript 谷歌柱形图-为每列显示不同的颜色
片段Javascript 谷歌柱形图-为每列显示不同的颜色,javascript,jquery,charts,google-api,google-visualization,Javascript,Jquery,Charts,Google Api,Google Visualization,片段 google.load("visualization", "1", {packages: ["corechart", "bar"]}); google.setOnLoadCallback(drawStuff); function drawStuff() { var timesheetRes = ["Resouce 1","Resouce 2","Resouce 3","Resouce 4","Resouce 5"]
google.load("visualization", "1", {packages: ["corechart", "bar"]});
google.setOnLoadCallback(drawStuff);
function drawStuff() {
var timesheetRes = ["Resouce 1","Resouce 2","Resouce 3","Resouce 4","Resouce 5"];
var timesheetWeek = ["Week 1","Week 2","Week 3","Week 4","Week 5"];
var timesheetHours = [45,40,40,0,0];
var dataArray = [['Resources', 'Week', 'Hours']];
for (var n = 0; n < timesheetHours.length; n++) {
dataArray.push([timesheetRes[n], timesheetWeek[n], timesheetHours[n]]);
}
var data = new google.visualization.arrayToDataTable(dataArray);
var color = <?php echo $json_color_str ?>;
var color_count = <?php echo $color_count ?>;
for (var i = 0; i < color_count; i++) {
var color_str = color[i];
var options = {
width: 700,
height: 350,
legend: {position: 'none'},
bar: {groupWidth: '50%'},
isStacked: true,
tooltip: {trigger: 'none'},
colors: color_str, //being passed in array format for each bar
hAxis: {title: "Resource(s)",
titleTextStyle: {color: '#e91e63', bold: 1, fontSize: 14}},
vAxis: {title: "Week(s)",
ticks: weekAxis(),
gridlineColor: 'transparent',
titleTextStyle: {color: '#F4B400', bold: 1, fontSize: 14}
}
};
var chart = new google.visualization.ColumnChart(document.getElementById("top_x_div"));
chart.draw(data, options);
}
}
function weekAxis() {
var ticks = new Array();
var week_count = <?php echo $week_no ?>; //count number of weeks
for (i = 1; i <= week_count; i++) {
var tick_str = {};
tick_str['v'] = (week_count * i);
tick_str['f'] = 'Week ' + i;
ticks.push(tick_str);
}
return ticks;
}
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<div id="top_x_div"></div>
google.load(“可视化”,“1”,{packages:[“corechart”,“bar”]});
setOnLoadCallback(drawStuff);
函数drawStuff(){
var时间表=[“资源1”、“资源2”、“资源3”、“资源4”、“资源5”];
var时间表=[“第1周”、“第2周”、“第3周”、“第4周”、“第5周”];
var时间表=[45,40,40,0,0];
var dataArray=[['Resources','Week','Hours']];
对于(var n=0;n 对于(i=1;我不需要在选项上设置颜色,您应该尝试在每个栏上设置它们,var dataArray=[['Resources'、'Week'、'Hours'、{role:'style'}]];然后是:dataArray.push([timesheetRes[n]、timesheetWeek[n]、timesheetHours[n]、'color:#76A7FA']));然后用你想要的颜色代替#76A7FA@juvian,感谢您的回复。但是我需要为每个条形图列应用不同的颜色。上面的内容是否适用于每个条形图中不同的条形图颜色或列颜色?嗯,您是对的,这似乎不是一个简单的方法。您可以修改一下当前的输出图表吗?您的代码缺少一些php变量可以尝试使用这些选项,但需要试穿something@juvian,不确定这把小提琴是否会起作用-在我的代码中,color\u str
循环每个条形列以应用相关颜色。虽然循环选项
会起作用,但有些方法只需要传递最后一个color\u str
,并覆盖适用于每个条形柱