javascript - 将数据正确绑定到 d3 中的饼图
问题描述
我目前正在做一个 d3-Project 并遇到了问题。
我的 CSV 文件包含如下数据:
region, number_of_red_cars, number_of_green_cars, number_of_blue_cars, cars_total
A,5,10,5,20
我现在想创建一个饼图,显示不同颜色汽车的份额,但我不知道我必须将哪些数据绑定到饼图。
d3.csv("details.csv",function(data){
var filtered = data.filter(function(d) {
if (d.region== "A")
return d;
})
var g= svg.select("body")
.data(pie(filtered))
.enter().append("g")
.attr("class","arc");
g.append("path")
.attr("d",arc)
.style("fill",function(d){return color (d.data.cars_total)});
g.append("text")
.attr("transform", function(d){return "translate(" + labelArc.centroid(d)+")";})
.attr("dy", "35.em")
.text(function(d){return d.data.cars_total;})
.style("fill","white");
})
这不会给我预期的结果,因为我想要一个饼图来显示每种颜色在汽车总数中的确切份额。
谁能帮我吗?:(
编辑: 饼图应该是这样的
解决方案
推荐阅读
- macos - Appium Inspector 在 macOS 上加载整个屏幕而不是指定的 macOS 应用程序
- android - 键盘输入隐藏了 recycleview 适配器中的新条目
- c# - c# 如何将 JWK 转换为 RsaSecurityKey
- c++ - 如何在没有 UI 挂起的情况下将 QtcpSockets 连接到大约 100 个服务器?
- reactjs - 我收到 TypeError: Cannot read property 'push' of undefined。我应该怎么办?
- html - 在 Bootstrap 5 的 div 中显示轮播作为背景
- java - 我正在解决关于 GKG 问题的问题是给定一个字符串 S,反转字符串而不反转其单个单词。单词由点分隔
- python - 用更快/更有效的替代方法替换数据帧上的嵌套循环
- arrays - 我正在尝试 K&R C 语言书中的这个程序,但我遇到了问题
- c++ - 如何将此代码封装为c++中的函数?