Javascript d3带有IF语句/三元运算符的path.line笔划宽度
尝试使用IF语句/三元运算符更改行笔划宽度,例如,如果d.country==“China”笔划宽度:2。这必须是path.line属性,所以在调用line之后,我将它附加到这个属性 我已经将countryName添加到排放对象中,我还注意到条件始终为FALSE,因此笔划宽度为0.5。为什么这不是真的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
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
)