为了账号安全,请及时绑定邮箱和手机立即绑定

在 JS 中迭代 JSON 结构

在 JS 中迭代 JSON 结构

米琪卡哇伊 2021-06-10 14:06:02
我需要设置一些圆的半径,我有以下数据,由链接和节点组成。我需要将圆(节点)的半径设置为连接到节点的链接的总和var data = {    "nodes": [        {            "id": "s1",            "val": 12        },        {            "id": "s2",            "val": 12        },        {            "id": "s3",            "val": 12        },        {            "id": "s4",            "val": 12        },        {            "id": "s5",            "val": 12        },        {            "id": "s6",            "val": 12        }    ],    "Links": [        {            "n1": "s1",            "n2": "s2",            "amount": 10        },        {            "n1": "s2",            "n2": "s3",            "amount": 10        },        {            "n1": "s2",            "n2": "s4",            "amount": 10        },        {            "n1": "s2",            "n2": "s6",            "amount": 10        },        {            "n1": "s3",            "n2": "s1",            "amount": 10        },        {            "n1": "s4",            "n2": "s5",            "amount": 10        },        {            "n1": "s5",            "n2": "s6",            "amount": 10        }    ]};即(我希望节点此时处于上下文中),我在下面编写了一些伪代码val1 = 0val2 = 0 for i to len.links  if (links.node1 = nodes.id)    val1 = val1 + links.amount  else if (links.node02 = nodes.id)    val2 = val2 + links.amountnextsum = val1 + val2下面的代码将圆圈放在屏幕上,我尝试了各种方法,但结果是我所说的死亡白屏  var w = 1200;  var h = 800;  var svg = d3.select("body").append("svg").attr("width",w).attr("height", h);      var lines = svg.attr("class", "line")  d3.json("data.json", function(error, data) {        console.log(data);        var circles = svg.selectAll("foo")  .data(data.nodes)  .enter()  .append("circle")  .attr("cx", function(d) {    return d.x;  })  .attr("cy", function(d) {    return d.y;  })  .attr("r", 20); // <- i want to put this calculation here我是 JS 新手,不知道如何将其翻译成 Javascript
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 231 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信