出现错误 "Data column(s) for axis #0 cannot be of type string",即使我正在替换 URL

Getting Error "Data column(s) for axis #0 cannot be of type string" even though im replacing URL

大家好,我在使用 java 脚本和为我的传播 sheet 实施图表仪表板时遇到问题。出于测试目的,我按照 google 的教程使用我自己的 spreadsheet 创建了一个图表仪表板。我试图通过用我自己的点差 sheet URL 替换 URL 地址来创建一个简单的图表,但是当我收到此错误消息 "Data column(s) for axis #0 cannot be of type string"

我试图在图表中实施的 table 的副本位于此处:https://docs.google.com/spreadsheets/d/10fFAo_MxyLx1apRXiepR91UJXO2KA5ucRx2XB66bc4Q/edit?usp=sharing 它形成 3 称为 "Attendance Record" 我想要作为图表

所以我按照 google 中第一个 link 的步骤进行了编辑以确保它 link 正确并指向选定的单元格范围但更改了#gid到#gid3,因为我读到末尾的数字代表您所指的形式。然后我通过添加 &rangeB2:C4 在 link 的末尾指定范围,因为我只希望名称和数字列出现在图表中:

下面的link是我编辑替换的。

https://docs.google.com/spreadsheets/d/1FOVmfesx7ATNe8qjWjkU2GbjBCBZxL0BRswJv6rcGPs/edit#gid=3&rangeB1:C4

但出于某种原因,它会显示我问题中所述的错误消息。

如果我错了,请最终纠正我,但我认为这与我正在使用的 URL link 有关,因为我用另一个 link 尝试过,他们用作一个例子,它奏效了。我什至将他们使用的相同数据复制并粘贴到我的 spreadsheet 中,然后复制了 url,但仍然没有用。

那么如何得到正确的link?

可视化不应使用 edit URL,而应使用 GViz 服务,例如:

https://docs.google.com/spreadsheets/d/{key}/gviz/tq

然后,您包含获取数据的参数。导航到您的 "Attendance Record" sheet,您会发现 gid=1324373577。这是一个永久的 gid;位置 gid (3) 似乎不适用于新的 Google 表格。

要将数据限制在特定的列和行中,您可以使用 Visualization Query Language 传入查询。对于您正在查看的特定单元格,这会起作用:

tq=select B,C where B <> ""

内容如下:

  • select B,C... 从分布中选择 B 列和 C 列sheet。忽略其他一切。
  • ... where B <> "" 但只有符合这个条件的行,即B列中的值不为空。

...最终将成为 B1:C4

结果URL:

https://docs.google.com/spreadsheets/d/1FOVmfesx7ATNe8qjWjkU2GbjBCBZxL0BRswJv6rcGPs/gviz/tq?gid=1324373577&tq=select%20B,C%20where%20B%20%3C%3E%20%22%22

Returns 这个(为了便于阅读而格式化):

google.visualization.Query.setResponse({
  "version": "0.6",
  "reqId": "0",
  "status": "ok",
  "sig": "792390171",
  "table": {
    "cols": [{
      "id": "B",
      "label": "",
      "type": "string"
    }, {
      "id": "C",
      "label": "Number Attended",
      "type": "number",
      "pattern": "General"
    }],
    "rows": [{
      "c": [{
        "v": "David "
      }, {
        "v": 2.0,
        "f": "2"
      }]
    }, {
      "c": [{
        "v": "Chris Hinds"
      }, {
        "v": 1.0,
        "f": "1"
      }]
    }, {
      "c": [{
        "v": "Joe Blog"
      }, {
        "v": 1.0,
        "f": "1"
      }]
    }]
  }
});