gpt4 book ai didi

javascript - D3 从元素中获取属性

转载 作者:可可西里 更新时间:2023-11-01 02:33:33 44 4
gpt4 key购买 nike

我正在尝试一些基本的 d3,我一直在尝试使用 d3 获取每个 rect 的属性,但我什么也得不到。

Console Screen

当我尝试 d3.selectAll("rect") 时,我得到了

result

如何使用类似d3.selectAll("rect").select("part1").attr(...) 的方式访问rect 的属性> 或类似的东西?我想访问所有 rect 的不同属性。

最佳答案

您可以使用getter 获取元素的任何属性:

d3.select(foo).attr("bar")

这基本上是只有一个参数的 attr() 函数。

这是一个演示。有两类矩形,part1part2。我正在选择所有 part1 矩形并获取它们的 x 位置:

var svg = d3.select("svg");
var rects = svg.selectAll(null)
.data(d3.range(14))
.enter()
.append("rect")
.attr("fill", "teal")
.attr("y", 20)
.attr("x", d => 10 + 12 * d)
.attr("height", 40)
.attr("width", 10)
.attr("class", d => d % 2 === 0 ? "part1" : "part2");

d3.selectAll(".part1").each(function(d,i) {
console.log("The x position of the rect #" + i + " is " + d3.select(this).attr("x"))
})
<script src="https://d3js.org/d3.v4.min.js"></script>
<svg></svg>

关于javascript - D3 从元素中获取属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43646573/

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