【发布时间】:2015-01-22 14:13:43
【问题描述】:
我使用了以下代码http://jsfiddle.net/asgallant/WaUu2/,它允许我从我的组合图表中打开和关闭系列。我遇到的问题是我的组合图同时使用了折线和条形系列类型。当我打开和关闭图表中的系列时,我会丢失系列类型设置。我将以下内容放在一起,以将我的平均列保持为折线图,将其余列保持为条形图。
function setChartView() {
var state = columnFilter.getState();
var row;
var view = {
columns: [0],
};
var labels = [];
for (var i = 0; i < state.selectedValues.length; i++) {
row = columnsTable.getFilteredRows([{
column: 1,
value: state.selectedValues[i]
}])[0];
view.columns.push(columnsTable.getValue(row, 0));
labels.push([columnsTable.getValue(row, 0), columnsTable.getValue(row, 1)]);
}
// sort the indices into their original order
labels.sort(function(a, b) {
return (a[0] - b[0]);
});
view.columns.sort(function(a, b) {
return (a - b);
});
chart.setView(view);
for (var i = 0; i < labels.length; i++) {
chart.setOption('series.' + i + '.type', 'bars');
if (labels[i][1] == 'Average') {
chart.getOptions().series[i].type = 'line';
}
}
chart.draw();
}
google.visualization.events.addListener(columnFilter, 'statechange', setChartView);
setChartView();
columnFilter.draw();
它似乎适用于我的具体情况,但是,如果我想保持所有选项相同怎么办?
【问题讨论】: