似乎很难让我的数据以正确的格式与高图的饼图一起使用。
如果我按如下方式强制数据,我的图表会出现,所以我知道我已经正确地完成了整合:
data: [
['Test', 30],
['Other', 70],
]
但是当我尝试使用我的实际数据时,它无法正常工作。
我尝试过以下无法解决的问题:
data: <%= Location.browsers.map { |o| [o.type, o.count] }.inspect %>
还尝试过:
data: <%= Location.browsers.map { |o| "#{o.type}, #{o.count}" }.to_json %>
第一个给我一个这样的结果:
"[[\"Safari\", 6448], [\"Microsoft\", 5253], [\"Microsoft-CryptoAPI\", 5185], [\"Dalvik\", 3870], [\"Chrome\", 3701], [\"Mozilla\", 3239], [\"Android\", 2285], [\"Windows-Update-Agent\", 2018], [\"Internet Explorer\", 1843], [\"Firefox\", 1459]]"
看起来不错。
运行此查询的正确方法是什么?
答案 0 :(得分:4)
data: <%= raw Location.browsers.map { |o| [o.type, o.count] } %>
或
data: <%= raw Location.browsers.map { |o| [o.type, o.count] }.to_s %>
应该有用。
答案 1 :(得分:1)
"[[\"A\", 10], [\"B\", 30], [\"C\", 0], [\"D\", -10]]"
[["A", 10], ["B", 30], ["C", 0], ["D", -10]]
我&amp; II不一样
我是 String
,而II是javascript Array<Array<Object>>
在您的情况下,第一个是第二个版本的stringify
-ed版本。您只需要执行相反的操作即可使用$.parseJSON()
或JSON.parse()
Array
取回String
我没有Ruby的第一手经验,但我的猜测就是这样就可以完成这项工作
data: $.parseJSON(<%= Location.browsers.map { |o| [o.type, o.count] }.inspect %>)