我有一个谷歌图表,我试图根据类别控件更改颜色。
我的图表是一个直方图,应根据programmaticDropdown中的选择更改颜色。我的部分代码如下所示:
var dashboard = new google.visualization.Dashboard(
document.getElementById('programmatic_dashboard_div'));
programmaticDropdown = new google.visualization.ControlWrapper({
'controlType': 'CategoryFilter',
'containerId': 'programmatic_control_div',
'options': {
'filterColumnLabel': 'Type',
'ui': {'allowMultiple': false},
}
});
programmaticChart = new google.visualization.ChartWrapper({
'chartType': 'Histogram',
'containerId': 'programmatic_chart_div',
'options': {
'title': 'Issues by Month',
'legend': 'none',
'height':400,
'hAxis': {
'viewWindowMode':'explicit',
'viewWindow':{
'max':13,
'min':0
}
}
},
'view': { 'columns': [0, 1] }
});
dashboard.bind(programmaticDropdown, programmaticChart);
dashboard.draw(data);
}
此外,这里有一个链接到谷歌图表控件文档,其中包含一些用户界面信息......任何人都可以帮忙吗?
感谢!!!
https://developers.google.com/chart/interactive/docs/gallery/controls?hl=en#controls-gallery
答案 0 :(得分:1)
解决了!!!为此,我必须在我的代码中添加一个事件监听器和函数。见下文。
google.visualization.events.addListener(programmaticDropdown,' statechange',changeTitle);
function changeTitle () {
var location = programmaticDropdown.getState().selectedValues[0];
if (location == "CLOSED") {
programmaticChart.setOption('colors', ['#e7711c']);
} else if (location == "OPEN") {
programmaticChart.setOption('colors', ['#ff0000']);
}
programmaticChart.draw();
}