Javascript 通过JS脚本和Google Sheets API获取图表作为图像?

Javascript 通过JS脚本和Google Sheets API获取图表作为图像?,javascript,google-sheets,discord,discord.js,google-sheets-api,Javascript,Google Sheets,Discord,Discord.js,Google Sheets Api,我正在创建一个Discord机器人,它将从Google工作表中获取一个指定的图表,并将该图表发送到服务器。手头的工作表一次只能有一个图表,因此我能够找到正确的chartId,如下所示: sheets.spreadsheets.get({ spreadsheetId: 'MYSPREADSHEETID' }, (err, res) => { if (err) return console.log('The API returned an error: ' + err);

我正在创建一个Discord机器人,它将从Google工作表中获取一个指定的图表,并将该图表发送到服务器。手头的工作表一次只能有一个图表,因此我能够找到正确的
chartId
,如下所示:

sheets.spreadsheets.get({
    spreadsheetId: 'MYSPREADSHEETID'
}, (err, res) => {
    if (err) return console.log('The API returned an error: ' + err);
    var id = res.data.sheets[0].charts[0].chartId;
});
但是,我无法找到如何将相应的图表导出为图像,或找到图表的唯一URL,甚至无法使用现有数据重新创建图表。我正在使用discord.js和GoogleSheetsAPIv4

不幸的是,在这篇文章中,无法将图表作为图像检索或使用Sheets API获取其特定URL。在这里,当我们遇到试图在电子表格中检索图表图像的问题时,我将介绍三种解决方法

解决方法1 如果您的主要目的是获取图表数据,然后在其他地方使用它,或者为其他Google应用程序创建一个数据,那么您可以使用API方法
get
,只请求所需的字段(在本例中,是图表对象),如中所示

解决方法2 如果您需要通过一个简单的链接轻松访问此图表图像,您可以发布以下图表。这可以为您的网站生成链接嵌入,您可以轻松共享和使用

解决方法3 您可以使用应用程序脚本创建Web应用程序,并在第一个解决方案中使用API方法从图表对象生成Blob,并将其作为图像插入到其他工作表或HTML页面中。在中,您可以看到此解决方案实现的示例


我希望这对你有帮助。如果您还需要什么,或者您不了解什么,请告诉我。:)

不幸的是,在发表此评论时,无法将图表作为图像获取或使用Sheets API获取其url。但是,有一些工作循环。中提供了第一个工作循环,它将返回带有图表的工作表对象。您还可以将UI中的图表移动到其自己的工作表中,以便为其分配特定的工作表。第二个工作循环是将图表发布为,这样您可以获得链接或其嵌入。您还可以使用Apps脚本将其部署为web应用程序,并从中获取其Blob对象以生成图像,如图所示。让我知道这些解决方法是否适合您的情况,或者您是否会寻找其他解决方法。@MateoRandwolf非常感谢!将图表发布为图像并使用该链接对我很有效。