D3.js D3:颜色a“;“元素”;通过键的值在图上显示

D3.js D3:颜色a“;“元素”;通过键的值在图上显示,d3.js,D3.js,我没有代码显示-我不知道从哪里开始。这是我的问题。通常情况下,我会胡闹很长时间,我已经这么做了。然而,我是一个编码高手,所以这对我来说有点难 我知道D3的基本原理。我可以创建一些带有类别或范围的简单色阶。我想做的是以下几点 图表上的每个点、条或线都是特定的颜色,具体取决于JSON文件中“键”的“值” e、 g.“供应商名称”:“FLYBE BRITISH EUROPEAN” 将等同于紫色 e、 g.“供应商名称”:“易捷航空” 将等同于橙色 等等等等 我是否创建了一个新的JSON数组,其中包含一

我没有代码显示-我不知道从哪里开始。这是我的问题。通常情况下,我会胡闹很长时间,我已经这么做了。然而,我是一个编码高手,所以这对我来说有点难

我知道D3的基本原理。我可以创建一些带有类别或范围的简单色阶。我想做的是以下几点

图表上的每个点、条或线都是特定的颜色,具体取决于JSON文件中“键”的“值”

e、 g.“供应商名称”:“FLYBE BRITISH EUROPEAN” 将等同于紫色 e、 g.“供应商名称”:“易捷航空” 将等同于橙色

等等等等

我是否创建了一个新的JSON数组,其中包含一个对象,该对象列出了每个供应商的名称以及我添加的相关颜色作为其值?差不多


我不知道该怎么办:(!!!!!

只需将具有所需颜色值的属性添加到您的数据中,在您的JSON文件中,然后将颜色应用到您的元素。就像您应用任何其他属性一样

这里有一个例子

var margin={top:50,right:50,bottom:50,left:50},
w=300-边距。左-边距。右,
h=600-margin.top-margin.bottom,
circleRadii=15,
//为数据添加颜色
circleData=[{x:10,y:10,c:“黄色”},{x:50,y:80,c:“绿色”},{x:90,y:10,c:“红色”}];
var svg=d3.选择(“主体”)
.append(“svg”)
.attr(“宽度”,w+边距。左侧+边距。右侧)
.attr(“高度”,h+margin.left+margin.right)
.附加(“g”)
.attr(“转换”、“平移”(+margin.left+)、“+margin.top+”);
var circles=svg.selectAll(“圆”)
.数据(循环数据)
.输入()
.附加(“圆圈”);
var circleAttr=圆
.attr(“cx”,函数(d){return d.x;})
.attr(“cy”,函数(d){返回d.y;})
.attr(“r”,circleRadii)
//应用数据集中的颜色
.style(“fill”,函数(d){return d.c;});

这有助于更好地理解它,兄弟!谢谢!当然,没问题。愉快的编码。我从外部资源中提取了数据,比如数组中的1000条记录(对象)。每个对象都有一个供应商名称和供应商值。有没有办法将颜色(键)及其值=“添加到我想要的颜色中”对于每个对象?类似的-上面的示例将在两个单独的记录(对象)中。