【问题标题】:Getting Error "Data column(s) for axis #0 cannot be of type string" even though im replacing URL出现错误“轴 #0 的数据列不能是字符串类型”,即使我正在替换 URL
【发布时间】:2015-04-07 17:22:45
【问题描述】:

大家好,我在使用 java 脚本并为我的电子表格实现图表仪表板时遇到问题。出于测试目的,我按照谷歌的教程使用我自己的电子表格创建图表仪表板。我试图通过用我自己的电子表格 URL 替换 URL 地址来创建一个简单的图表,但是当我收到此错误消息“轴 #0 的数据列不能是字符串类型”时,这种事适得其反。

我要在图表中实现的表格副本位于此处:https://docs.google.com/spreadsheets/d/10fFAo_MxyLx1apRXiepR91UJXO2KA5ucRx2XB66bc4Q/edit?usp=sharing 它的表格 3 称为“出勤记录”,我希望将其作为图表

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

下面的链接是我编辑替换的那个。

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

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

如果我错了,请最终纠正我,但我认为这与我正在使用的 URL 链接有关,因为我尝试使用他们用作示例的另一个链接并且它有效。我什至将他们使用的相同数据复制并粘贴到我的电子表格中,然后复制了网址,但仍然无法正常工作。

那么如何获得正确的链接呢?

【问题讨论】:

  • 由于教程中的信息对于您的问题的上下文很重要,因此您应该包含指向它的链接。
  • 你好,抱歉,下次一定要把事情说清楚

标签: javascript google-sheets google-docs dashboard


【解决方案1】:

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

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

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

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

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

内容如下:

  • select B,C... 从电子表格中选择列 B 和 C。忽略其他一切。
  • ... where B &lt;&gt; "" 但只有满足此条件的行,B 列中的值不为空。

...最终将成为B1:C4

生成的网址:

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

返回这个(为便于阅读而格式化):

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"
      }]
    }]
  }
});

【讨论】:

  • 非常感谢您的回复,这已经解决了问题,您先生让我很开心。一点也不夸张,我花了大约 6 个小时才发现出了什么问题……我根本找不到任何关于此的文档?请问您在哪里找到解决问题的方法?
  • @hero8110 - 谢谢,很高兴为您提供帮助。请确保添加有关您在问题中所指教程的信息,以帮助其他人。此信息几乎是您在问题中链接的查询语言参考中找到的内容的重复。请参阅在数据源 URL 中设置查询部分。
  • 当然,我很抱歉没有添加这些信息。我知道您已经解决了我的问题,但我真的很想了解您的查询是如何工作的。我查看了文档并使用了“编码”和“解码”,但如果我可能会问,您能否带我完成您在 url 中设置的查询。 gyazo.com/57634109537cf57ae35bd292ca1a2926
  • 更新了,看看吧。
  • 嘿@Mogsdad 很抱歉给你这样的麻烦,但是让谷歌Java脚本工作真的很紧张,而且文档很难理解,如果你可以签出,是否有可能我的 JsFiddle jsfiddle.net/hm7q5peg 以及为什么它不起作用。我真的很抱歉这样问你,但我不能再忍受它太紧张了。
猜你喜欢
  • 1970-01-01
  • 2022-01-12
  • 1970-01-01
  • 2014-04-20
  • 1970-01-01
  • 2021-10-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多