图表服务的新手,希望能详细说明这篇文章Google 图表对象错误
我遇到了同样的“对象类型与列类型不匹配”的问题,但我检查了行并确保数据是相同的类型。如果我将整个工作表设置为纯文本格式,则图形执行正确且没有错误;但我放弃了所有使用航班日期或尝试汇总航班时间的过滤器和功能,并计算工作簿中其他工作表上的航班类型。
有没有办法让图表在使用之前将列数据串起来?(简单地)。我什至将数据范围设置为不包括字符串标题,以防万一出现问题,但这也不起作用。
样本数据表链接:样本数据表
这是代码:
function doGet(){
//Get the data from spreadsheet
var ss = SpreadsheetApp.openById(ScriptProperties.getProperty('hoistLog'));
var sheet = ss.getSheetByName('Flight Tracking');
var data = sheet.getDataRange();
//Filters
var unitFilter = Charts.newCategoryFilter()
.setFilterColumnIndex(22)
.build();
var missionTypeFilter = Charts.newCategoryFilter()
.setFilterColumnIndex(2)
.build();
//Charts
var missionTypePieChart = Charts.newPieChart()
.setDataViewDefinition(Charts.newDataViewDefinition().setColumns([2]))
.setDimensions(550, 350)
.setTitle('Mission Types')
.set3D()
.build();
var unitTypePieChart = Charts.newPieChart()
.setDataViewDefinition(Charts.newDataViewDefinition().setColumns([22]))
.setDimensions(550, 350)
.setTitle('Flights By Unit')
.set3D()
.build();
var tableChart = Charts.newTableChart()
.setDataViewDefinition(Charts.newDataViewDefinition().setColumns([0, 2, 22, 23, 24, 25, 33, 34, 35, 36, 37]))
.setDimensions(1100, 500)
.build();
//Dasboard
var dashboard = Charts.newDashboardPanel().setDataTable(data)
.bind([unitFilter, missionTypeFilter], [missionTypePieChart, unitTypePieChart, tableChart])
.build();
var app = UiApp.createApplication();
var filterPanel = app.createHorizontalPanel();
var chartPanel = app.createHorizontalPanel();
var tablePanel = app.createVerticalPanel();
filterPanel.add(unitFilter).add(missionTypeFilter).setSpacing(10);
chartPanel.add(missionTypePieChart).add(unitTypePieChart).setSpacing(10);
tablePanel.add(tableChart).setSpacing(10);
dashboard.add(app.createVerticalPanel().add(filterPanel).add(chartPanel).add(tablePanel));
app.add(dashboard);
return app;
}
提前谢谢...