如何在D3JavaScript中从CSV加载的列子集
我们有一些data.csv如何在D3JavaScript中从CSV加载的列子集,javascript,csv,d3.js,data-visualization,Javascript,Csv,D3.js,Data Visualization,我们有一些data.csv University,Total,Females,Males,Year,Type PortSaid,13817,6679,7138,2012,Public PortSaid,14790,7527,7263,2013,Public PortSaid,17295,8509,8786,2010,Public 6OctoberUniversity,12507,4297,8210,2012,Private 6OctoberUniversity,14608,5360,9248,2
University,Total,Females,Males,Year,Type
PortSaid,13817,6679,7138,2012,Public
PortSaid,14790,7527,7263,2013,Public
PortSaid,17295,8509,8786,2010,Public
6OctoberUniversity,12507,4297,8210,2012,Private
6OctoberUniversity,14608,5360,9248,2013,Private
我们尝试使用D3操作数据,并加载数据:
var dataset;
d3.csv("universities_data.csv", function(data) {
data.forEach(function(d) {
d.Females = +d.Females;
d.Males = +d.Males;
d.Total = +d.Total;
d.Year = +d.Year
dataset = data;
});
});
我试图重新创建以下内容,这非常简单。唯一的区别是:我加载的是CSV数据,而不是示例代码中的简单一维数组
在Chrome developer中运行它,您将在第60行遇到无法读取属性“length”的未定义错误,我将数据绑定到pie()函数
我的问题是:
- 我是否正确加载csv数据李>
- 我怎样才能对总数进行子集划分 列仅用作pie()函数中的值?看来 应该解决这个问题
var pie = d3.layout.pie()
.value(function(d) { return d.Total; })
.padAngle(.02);
该演示非常慷慨,非常有效。我已经看到了mbostock答案的链接,但仍然无法理解具体的实现。非常感谢。