Javascript d3带有IF语句/三元运算符的path.line笔划宽度

Javascript d3带有IF语句/三元运算符的path.line笔划宽度,javascript,arrays,object,d3.js,Javascript,Arrays,Object,D3.js,尝试使用IF语句/三元运算符更改行笔划宽度,例如,如果d.country==“China”笔划宽度:2。这必须是path.line属性,所以在调用line之后,我将它附加到这个属性 我已经将countryName添加到排放对象中,我还注意到条件始终为FALSE,因此笔划宽度为0.5。为什么这不是真的 rioV8的意思是您已经有了组选择,所以您只需要使用groups来附加新元素 groups是所有g的选择,它是您希望附加路径的地方。与您不再选择添加标题的方式相同 groups .appe

尝试使用IF语句/三元运算符更改行笔划宽度,例如,如果d.country==“China”笔划宽度:2。这必须是path.line属性,所以在调用line之后,我将它附加到这个属性

我已经将countryName添加到排放对象中,我还注意到条件始终为FALSE,因此笔划宽度为0.5。为什么这不是真的


rioV8的意思是您已经有了组选择,所以您只需要使用
groups
来附加新元素

groups
是所有
g
的选择,它是您希望附加路径的地方。与您不再选择添加标题的方式相同

groups
    .append("path").classed("line", true)
    .attr("d", d=> line(d.emissions))
    .style("stroke-width", d => 
        d.country === "China" ? 5 : 0.5
    )

如果您创建了自己的路径,则无需将国家添加到排放中differently@rioV8我是d3新手。你能说得更具体一点吗?仔细阅读
selectAll
所做的一切,谢谢!但是因为已经有一个包含数据的组,所以它必须是一个用于行函数[d.emissions]的数组?因为现在有一个包含3个键和值的对象,而不是代表x和y值的两个键和值?因为您的组
let groups=svg.selectAll(“g”).data(dataset).enter().append(“g”)
是一个包含数据集的
g
选项,当您附加并使用绑定数据(即
{country,emissions}
数组)时,您只需将其传递给行函数
.attr(“d”,d=>line(d.emissions))
groups
    .append("path").classed("line", true)
    .attr("d", d=> line(d.emissions))
    .style("stroke-width", d => 
        d.country === "China" ? 5 : 0.5
    )