在d3.js中,我经常有如下数据:
nodes = [
{x: 30, y: 50},
{x: 50, y: 80},
{x: 90, y: 120}
]
现在我想从div标签中获取数据(不在js / coffee中实例化) HTML代码可能如下所示:
<div id="nodes">
<div class="node" data-x="30" data-y="50"></div>
<div class="node" data-x="50" data-y="80"></div>
<div class="node" data-x="90" data-y="120"></div>
</div>
我正在寻找类似下面的东西(当然实际上是在工作):
nodes = d3.selectAll(".node")
更改我的HTML格式是没问题的。我想避免使用外部 json文件。
答案 0 :(得分:0)
在你的帮助下,我最终得到以下信息: (rails-)html将数据传输给用户:
<%= content_tag "div", class: "graph", data: { nodes: @nodes, links: @links} do %>
coffeescript与jquery访问数据:
nodesD = $('.graph').data('nodes')
rails controller来创建数据:
@neo_servers.each do |neo|
@nodes << {x: x, y: y, name: neo['server']['data']['name']}
x += 10; y += 2
end
最后返回一个漂亮的图表:)
正如提议的那样,我使用了jquery和d3,它们很强大。 jquery获取数据,d3修改并可视化。
希望这有助于将来。