【问题标题】:How do I find the Chart Id of an existing chart in Google Sheets?如何在 Google 表格中找到现有图表的图表 ID?
【发布时间】:2019-02-10 14:32:24
【问题描述】:

如何查找已在 Google 表格中创建的图表的 ChartID。

我已经搜索了文档,但没有任何东西可以工作。

【问题讨论】:

  • 我的回答是否向您展示了您想要的结果?你能告诉我吗?这对我学习也很有用。如果这可行,与您有相同问题的其他人也可以将您的问题作为可以解决的问题。如果您对我的回答有疑问,我深表歉意。到时候,可以问一下你现在的情况吗?我想学习解决你的问题。

标签: google-sheets google-api google-sheets-api


【解决方案1】:

很遗憾,没有直接搜索图表 ID 的方法。但是您可以使用 Sheets API 中的 spreadsheets.get 方法检索电子表格中的所有图表 ID。 The official document 如下。

占位符chartId也用于表示给定图表的ID。您可以在使用 API 创建图表时设置此 ID,或允许 API 为您生成一个。您可以使用电子表格.get 方法读取现有图表的 ID。

端点:

例如,为了只检索图表ID,当使用sheets/charts/chartIdfields时,端点如下。

GET https://sheets.googleapis.com/v4/spreadsheets/### spreadsheetId ###?fields=sheets%2Fcharts%2FchartId

结果:

当第一张和第二张分别有2张图表和1张图表时,返回以下结果。如果要搜索图表ID,可以从以下结果中搜索。

{
  "sheets": [
    {
      "charts": [
        {
          "chartId": ###
        },
        {
          "chartId": ###
        }
      ]
    },
    {
      "charts": [
        {
          "chartId": ###
        }
      ]
    }
  ]
}

参考资料:

如果我误解了您的问题,我深表歉意。

【讨论】:

    【解决方案2】:

    这是在 Ruby 中的操作方法。

    require 'google/apis/sheets_v4'
    require 'googleauth'
    require 'googleauth/stores/file_token_store'
    
    sheet_name = 'Sheet1'
    
    response = service.get_spreadsheet(SPREADSHEET_ID)
    
    response.sheets.each do |sheet|
      title = sheet.properties.title
      if title = sheet_name
         unless sheet.charts.nil?
            charts = sheet.charts
            charts.each do |chart|
               chart_id = chart.chart_id
               puts chart_id
            end
         end
      end
    end
    

    【讨论】:

      猜你喜欢
      • 2016-07-03
      • 2017-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多