如何将ruby on rails数据导入d3.js?

时间:2016-04-08 01:54:04

标签: javascript ruby-on-rails ruby d3.js

我目前无法弄清楚如何将我在ruby轨道上创建的哈希值转换为javascript代码,我正在使用d3.js创建一个线图来显示随时间变化的数值。

哈希当前设置为{:date => value,:date =>价值等}}

我做了.to_json将它们变成json但是我在javascript中将这些值拉到我的图形的x和y值时遇到了很多麻烦。

有人可以帮我指点正确的方向吗?

谢谢!

2 个答案:

答案 0 :(得分:1)

有不同的方法可以做到这一点......你可以用AJAX做到这一点。

但这是一个非常简单的方法:

<script>
  <% my_ruby_hash = { foo: "bar" } %>
  var jsonString = "<%= my_ruby_hash.to_json %>"
  var parsedData = JSON.parse(jsonString)
</script>

答案 1 :(得分:0)

我使用gon gem生成与d3.js相似的图形

在你的宝石文件中添加gem gon

gem 'gon'

在您的相关控制器中,例如我使用索引

def index
  data = 'some data in what ever format you like'
  gon.data = data
end

在您的视图中,您可以访问gon数据并将其传递给相关的javascript函数

<script type="text/javascript" charset="utf-8">
  $( document ).ready(function() {
  var dataset = gon.data;
  plot_graph(dataset);
  });
</script>