D3.js的基础部分之选择集的处理 enter和exit的处理方法 (v3版本)
render() {
return (
<div id="body" >
<p></p>
</div>
);
}
var dataList = [3,6,9]
// 选择id为body的容器内的所有的p元素,将选择集结果赋值给变量p
var p = d3.select("#body")
.selectAll("p")
//绑定数据后,分别获取update和enter部分。
var update = p.data(dataList);
var enter = update.enter();
//update部分的处理方法是直接修改内容
update.text(function(d){
return d
})
//enter部分的处理方法是添加元素后再修改内容
enter.append("p")
.text(function(d){
return d
})
render() {
return (
<div id="body" >
</div>
);
}
var dataList = [100,200,300,400,500]; //定义数组数据
var body = d3.select("#body") //选择id为body的容器赋值给变量body
body.selectAll("p") //选择body中所有的p元素,但是没有p,因此说是我们选择了一个空集
.data(dataList) //绑定dataList数组
.enter() //返回enter部分
.append("p") //添加p元素
.text(function(d){
return d
})
render() {
return (
<div id="body" >
<p></p>
<p></p>
<p></p>
<p></p>
<p></p>
</div>
);
}
var dataList = [100,200,300];
var p = d3.select("#body")
.selectAll("p")
//绑定数据后,分别获取update部分和exit部分
var update = p.data(dataList);
var exit = update.exit();
//update部分的处理方法是修改内容
update.text(function(d){
return d
})
//exit部分的处理方法是删除
exit.remove()
var dataList = [100,200.300];
var p = d3.select("#body")
.selectAll("p")
//绑定数据后,分别返回update、enter、exit部分
var update = p.data(dataList);
var enter = update.enter();
var exit = update.exit();
//update部分的处理方法
update.text(function(d){
return d
})
// enter部分的处理方法
enter.append("p")
.text(function(d){
return d
})
// exit部分的处理方法
exit.remove()
D3.js的基础部分之选择集的处理 enter和exit的处理方法 (v3版本)的更多相关文章
- D3.js的基础部分之选择集的处理 过滤器、选择集的顺序、each()和call()的应用(v3版本)
选择集的处理 : 过滤器 有时候需要根据绑定数据对某选择集的元素进行过滤,例如某公司,只对id大于100的员工进行奖励.某学校只选拔身高超过170cm的学生等.类似这样的问题,需要根据条件获取选择集的 ...
- 【 D3.js 选择集与数据详解 — 4 】 enter和exit的处理方法以及处理模板
绑定数据之后,选择集分为三部分:update.enter.exit.这三部分的处理办法是什么呢?本文将讲解其处理方法,以及一个常用的处理模板. 1. enter的处理方法 如果没有足够的元素,那么处理 ...
- D3.js系列——初步使用、选择元素与绑定数据
D3 的全称是(Data-Driven Documents),顾名思义可以知道是一个被数据驱动的文档.听名字有点抽象,说简单一点,其实就是一个 JavaScript 的函数库,使用它主要是用来做数据可 ...
- d3代码如何改造成update结构(恰当处理enter和exit)
d3的enter和exit 网上有很多blog讲解.说的还凑合的见:https://blog.csdn.net/nicolecc/article/details/50786661 如何把自己的rude ...
- 【 D3.js 入门系列 --- 9.4 】 集群图的制作
本人的个人博客为: www.ourd3js.com csdn博客为: blog.csdn.net/lzhlzz 转载请注明出处,谢谢. 集群图( Cluster )通经常使用于表示包括与被包括关系. ...
- D3.js的基础部分之数组的处理 数组的排序和求值(v3版本)
操作数组 D3提供了将数组洗牌.合并等操作,使用起来是很方便的. d3.shuffle(array,[,lo[,ji]]) : //随机排列数组. d3.merge(arrays) : / ...
- D3.js的基础部分之数组的处理 映射(v3版本)
映射(Map) 映射(Map)是十分常见的一种数据结构,由一系列键(key)和值(value)组成的.每个key对应一个value,根据key可以获取和设定value,也可以根据key来查询val ...
- D3.js的基础部分之数组的处理 集合(Set)(v3版本)
数组的处理 之 集合(set) 集合(Set)是数学中常用的概念,表示具有某种特定性质的事物的总体.集合里的项叫做元素.集合的相关方法有: d3.set([array]) //使用数组来构建集合, ...
- D3.js画思维导图(转)
思维导图的节点具有层级关系和隶属关系,很像枝叶从树干伸展开来的形状.在前面讲解布局的时候,提到有五个布局是由层级布局扩展来的,其中的树状图(tree layout)和集群图(cluster layou ...
随机推荐
- ios alloc init 和 new 的区别
1.在实际开发中很少会用到new,一般创建对象咱们看到的全是[[className alloc] init] 但是并不意味着你不会接触到new,在一些代码中还是会看到[className new], ...
- Python学习杂记
Python中关键字yield有什么作用? 首先得理解generators,而理解generators前还要理解iterables: 你可以用在for...in...语句中的都是可迭代的:比如list ...
- 2018.12.12 codeforces 935D. Fafa and Ancient Alphabet(概率dp)
传送门 概率dp水题. 题意简述:给你数字表的大小和两个数列,数列中为0的数表示不确定,不为0的表示确定的,求第一个数列字典序比第二个数列大的概率. fif_ifi表示第i ni~ ni n位第一个 ...
- jQuery 常用效果
hide和show 同样有 fadeInhe fadeOut 的功能 $(document).ready(function(){ $("#hide").click(function ...
- poj 2506 Tiling(高精度)
Description In how many ways can you tile a 2xn rectangle by 2x1 or 2x2 tiles? Here is a sample tili ...
- 开源C++版本CGI库CGICC入门
原发布在ChinaUnix,但未自动搬迁过来:http://blog.chinaunix.net/uid-20682147-id-4895772.html PDF版本:https://files-cd ...
- virtualbox centos 连接网络
一.设置网络 设置 -> 网络 -> 连接方式:桥接网卡.设置当前连网络的界面名称.接入网线打勾 二.开启eth0 vi /etc/sysconfig/network-scripts/if ...
- 类中main函数的快捷创建
方法一: 新建类时,选择创建 方法二: 打出main-->Alt + /
- JVM可支持的最大线程数
转微博,因为他也是转载 不知道原出处 一.认识问题: 首先我们通过下面这个 测试程序 来认识这个问题:运行的环境 (有必要说明一下,不同环境会有不同的结果):32位 Windows XP,Sun J ...
- 2018/6/29 关于hashmap的总结
hashMap和ConcurrentHashMap的区别 hashMap内部具体如何实现的 如果hashMap的key是一个自定义的类,怎么办 为什么重写equals还要重写hashcode 一.什么 ...