向元素添加多个类名 D3

dis*_*ame 3 javascript d3.js

我正在制作一个包含来自不同区域的数据的 D3 散点图 - 这里的区域是欧洲、亚洲等大陆名称。我想将该区域与类名称相关联,以便我可以为一个区域执行常见活动。

下面是我将多个类一起添加到一个元素的代码:

var dot = svg.append("g")
                .attr("class", "dots")
                .selectAll(".dot")
                .data(interpolateData(1900))
                .enter().append("circle")
                .attr("class", "dot " + function(d) { return d.Region; });
Run Code Online (Sandbox Code Playgroud)

当我编写以下代码来检查哪些类与当前对象关联时。

alert(this.getAttribute('class'));
Run Code Online (Sandbox Code Playgroud)

我得到这个输出:

在此输入图像描述

所以我可以看到它成功添加“点”类,但无法动态添加区域。

TIA

Ger*_*ado 5

您已经移动了您的函数,将其作为第二个参数传递attr

.attr("class", function(d){
    return "dot " +  d.Region; 
});
Run Code Online (Sandbox Code Playgroud)