gpt4 book ai didi

javascript - 未选取 D3 数组对象格式

转载 作者:行者123 更新时间:2023-12-02 16:47:27 25 4
gpt4 key购买 nike

我试图让 D3 理解对象内的数组,以便 D3 识别出要创建两个元素,一个代表 10,一个代表 6。

如果我有一个标准数组,例如var myobj = [10,6];D3 理解这一点并创建了两个元素。但是,如果数组嵌入到如下所示的对象内,D3 将不会执行此操作。我的问题是 a) 为什么 D3 不明白这一点? b) 如何让 d3 明白我想要创建两个元素?我看过 d3.nested() 但我不明白它。

感谢您的帮助

var myobj = 
[
{myarray:[10,6]}

];

xx.selectAll(".newrec")
.data(myobj)
.enter()
.append("rect")
.attr("class","newrec")
.attr("width",function (d) {return d.myarray; }) //for width D3 returns one element rectangle with width of "10,6" which is not a width!
;

最佳答案

如果您不想更改数据结构,您可以执行以下操作:

var myobj = [ {myarray:[10,6,7]} ];

d3.selectAll(".newrec")
.data(myobj[0].myarray)
.enter()
.append("rect")
.attr("class","newrec")
.attr("width",function (d) {console.log(d); return d});

这将创建 3 个具有适当宽度的矩形,例如:http://jsfiddle.net/henbox/f3vqp7ct/

关于javascript - 未选取 D3 数组对象格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26990351/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com