javascript - 如何将 Google Visualization API 的日期列转换为 JSON 格式
问题描述
以下是我创建来自谷歌电子表格的数据表的方法。
var params = {
valueRenderOption: "UNFORMATTED_VALUE",
spreadsheetId: '15WX-5oiu54oiu35oi3u4o5o34iu5ou43oiu534',
range: 'Sheet2!A:H', // Retrieve the values of "A:H".
};
var request = gapi.client.sheets.spreadsheets.values.get(params);
request.then(function(response) {
var values = response.result.values.map(function(e) {return [e[0], e[1], e[2], e[3], e[4], e[5], e[6], e[7]]}); // Added
var w = new google.visualization.ChartWrapper({dataTable: values}); // Added
var dataTable = w.getDataTable();
dataTable.setColumnProperty(2, 'role', 'tooltip')
dataTable.setColumnProperty(3, 'role', 'style')
dataTable.setColumnProperty(4, 'date', 'Start');
dataTable.setColumnProperty(5, 'date', 'End');
dataTable.setColumnProperty(2, {type: 'string', role: 'tooltip', p: {html: true}});
......
如何将第 6 列(indexColumn5)的列属性指定为日期?
如果我创建一个图表包装器,它会失败并显示错误“第 6 列不是日期”。
var chartwraprange = new google.visualization.ControlWrapper({
controlType: 'DateRangeFilter',
containerId: 'controldaterange',
dataTable:dataTable,
options: {
filterColumnIndex: 6,
'ui': {
'label': '',
format:{pattern: "MM-dd-yyyy"},
},
}
});
解决方案
- 您要检索
e[5]
的var values = response.result.values.map(function(e) {return [e[0], e[1], e[2], e[3], e[4], e[5], e[6], e[7]]})
日期对象。e[5]
是“F”列。
如果我的理解是正确的,那么这个修改呢?在此修改中,我修改了您的脚本。因此,请将此视为几种解决方案之一。
修改后的脚本:
在此修改中,作为序列号检索的日期值将转换为 unix 时间和日期对象。请在您的脚本中反映以下修改。
从:
var values = response.result.values.map(function(e) {return [e[0], e[1], e[2], e[3], e[4], e[5], e[6], e[7]]});
至:
var values = response.result.values.map(function(e) {return [e[0], e[1], e[2], e[4], new Date((e[5] - 25569) * 86400 * 1000), e[6]]});
参考:
如果我误解了你的问题,我很抱歉。
推荐阅读
- conditional-statements - 这是一个好习惯吗:&&和|| 替换三元(在 javascript 或任何其他支持的语言中)
- azure-devops - 需要将区域中的项目放入自定义字段
- javascript - “setProps()”没有在 Jest 中触发“useEffect”
- python - python tarfile 中 tar --strip 的等效功能,用于随机命名的子文件夹
- angular - 来自firestore的ngFor循环中的DomSanitizer
- swagger - 在 Open API Doc 中包含多个文件路径
- react-native - 按下通知时 React Native 应用程序不导航
- python - 如何从字符串中删除我想要的所有内容?
- python - 如何在不关闭应用程序的情况下停止功能?
- javascript - 如何在 Vue.js 应用程序中获取 Fullcalendar 的视图对象