Javascript 不使用arrayToDataTable()修改Google柱形图中的柱颜色
我分析了Google Fusion表中的数据,所以我不能利用arrayToDataTable单独更改列的颜色和其他属性。任何人都知道如何选择列,然后修改它们的属性,包括隐藏它们。谢谢 以下是用于输入融合表数据和绘制图表的代码:Javascript 不使用arrayToDataTable()修改Google柱形图中的柱颜色,javascript,charts,properties,google-visualization,google-fusion-tables,Javascript,Charts,Properties,Google Visualization,Google Fusion Tables,我分析了Google Fusion表中的数据,所以我不能利用arrayToDataTable单独更改列的颜色和其他属性。任何人都知道如何选择列,然后修改它们的属性,包括隐藏它们。谢谢 以下是用于输入融合表数据和绘制图表的代码: google.load('visualization', '1', { packages: ['corechart', 'bar'] }); google.setOnLoadCallback(drawVisualization); var data;
google.load('visualization', '1', {
packages: ['corechart', 'bar']
});
google.setOnLoadCallback(drawVisualization);
var data;
var chart;
var views = {};
var options = {
titlePosition: 'none',
backgroundColor: '#E5E3DF',
tooltip: {
isHtml: true
},
legend: {
position: 'none'
},
vAxis: {
title: "Avg. Confidence Level",
format: 'decimal',
minValue: 0
},
hAxis: {
title: "Master Level Universities"
},
height: 500
};
function drawVisualization() {
chart = new google.visualization.ColumnChart(document.getElementById('chart_div'));
var query = "SELECT ShortName, Thesis FROM 1BslkTKgWIr0jwxR8odybI2fvvLSKnfSE8MylFzDi";
var queryText = encodeURIComponent(query);
var opts = {
sendMethod: 'auto'
};
var gvizQuery = new google.visualization.Query(
'http://www.google.com/fusiontables/gvizdata?tq=', opts);
gvizQuery.setQuery(query);
gvizQuery.send(function (e) {
data = e.getDataTable();
data = new google.visualization.DataView(data);
data.setColumnProperty(0, "ShortName", 'color: #e5e4e2'); //maybe this is how I modify column, but it spits out error.
chart.draw(data, options);
});
}
有关详细信息,请参阅文档 要设置栏颜色,请创建具有角色样式的列:
data.addColumn({type: "string", role: "style" });
然后将其设置为所需的值:
data.setCell(0,2,'red');
data.setCell(1,2,'purple');
data.setCell(2,2,'green');
data.setCell(3,2,'yellow');
代码段:
google.load'visualization'、'1'{
软件包:['corechart','bar']
};
google.setOnLoadCallbackdrawVisualization;
var数据;
var图;
var视图={};
变量选项={
标题位置:“无”,
背景颜色:“E5E3DF”,
工具提示:{
isHtml:是的
},
图例:{
位置:“无”
},
言辞:{
标题:平均置信水平,
格式:“十进制”,
最小值:0
},
哈克斯:{
标题:硕士级大学
},
身高:500
};
功能可视化{
chart=新的google.visualization.ColumnChartdocument.getElementById'chart_div';
var query=从1BSLKTKGWIR0JWXR8ODYBI2VVLSKNFSE8MYLFZDI中选择短名称;
var queryText=encodeURIComponentquery;
变量选项={
sendMethod:'自动'
};
var gvizQuery=new google.visualization.Query
'http://www.google.com/fusiontables/gvizdata?tq=,选择;
gvizQuery.setQueryquery;
gvizQuery.sendfunctione{
数据=e.getDataTable;
data.addColumn{
类型:字符串,
角色:风格
};//也许这就是我修改列的方式,但它会抛出错误。
data.setCell0,2,‘红色’;
data.setCell1,2,“紫色”;
data.setCell2,2,“绿色”;
data.setCell3,2,‘黄色’;
var dataView=new google.visualization.DataViewdata;
chart.drawdataView,选项;
};
}
html,
身体
图表组{
身高:100%;
宽度:100%;
边际:0px;
填充:0px
}
setColumnProperty参数应为columnIndex、属性名称、值。。。像0、'color'、'e5e4e2'。。。我想。我得到了一个错误:uncaughttypeerror:data.setColumnProperty不是一个函数,是不是您正在获取数据的同一个不再是dataTable。。。