D3.js的基础部分之数组的处理 嵌套结构(Nest)(v…
2019-05-08 07:25:10来源:博客园 阅读 ()
1 //定义一个数组
2 var dataList = [
3 { id: 100, name: "张某某", year: 1989, hometown: "北京" },
4 { id: 101, name: "李某某", year: 1987, hometown: "北京" },
5 { id: 102, name: "王某某", year: 1988, hometown: "上海" },
6 { id: 103, name: "赵某某", year: 1987, hometown: "广州" },
7 { id: 104, name: "孙某某", year: 1989, hometown: "上海" }
8 ]
9
10 var nest = d3.nest()
11 //将year作为第一个键
12 .key(function (d) { return d.year })
13 //将hometown作为第二个键
14 .key(function (d) { return d.hometown })
15 //指定将应用嵌套结构的数组为dataList
16 .entries(dataList)
17
18 console.log(nest)
1 var dataList2 = [
2 { sex: "男", age: 48, name: "张某某" },
3 { sex: "男", age: 42, name: "李某某" },
4 { sex: "男", age: 45, name: "王某某" },
5 { sex: "女", age: 33, name: "赵某某" },
6 { sex: "女", age: 31, name: "孙某某" }
7 ]
8 //如果使用sortValues()将数组按age排序并输出成嵌套结构,可使用一下代码:
9 var nest2 = d3.nest()
10 .key(function (d) { return d.sex })
11 .sortValues(function (a, b) {
12 return d3.ascending(a.age, b.age)
13 })
14 .entries(dataList2)
15 //则以sex为键的每一个分组的元素,都将按照age进行递增排序。
16 console.log(nest2)
输出结果为:
1 //nest.sortKeys(comparator)的使用
2 d3.nest()
3 .key(function(d){return d.year})
4 .sortKeys(d3.descending) //按照year进行排序
5 .key() //定义其他的键
var nest3 = d3.nest()
.key(function (d) { return d.sex })
.rollup(function (values) { return values.length })
.entries(dataList2)
console.log(nest3)
输出结果为:
1 var map = d3.nest()
2 .key(function (d) { return d.sex })
3 .map(dataList2, d3.map)
4
5 console.log(map)
原文链接:https://www.cnblogs.com/littleSpill/p/10815641.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:ES6的强大变量声明
- d3.js制作蜂巢图表带动画效果 2019-08-14
- D3.js 动画 过渡效果 (V3版本) 2019-05-22
- D3.js(v3)+react 制作 一个带坐标轴与比例尺的折线图 2019-05-22
- D3.js 对角线生成器 (V3版本) 2019-05-16
- D3.js 符号生成器 (V3版本) 2019-05-16
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash