现代社会中,数据已经逐渐成为了一种非常重要的社会资源了,通过数据可以分析到很多的东西并为我们人类做很多事情,比如可以帮助企业了解和定位客户(分析用户的行为偏好从而构建个性化推荐系统)、帮助了解和优化业务流程(优化商品供应链或配送路径)等。
这么重要和宝贵的社会资源是人们通过何种方式完成了对它的挖掘和使用呢——这就是数据最具威力的手段,增删改查;通过这四个方式形成的数据处理,展开了数据基础上大规模的应用。
随着数据量的极速增长,数据查找已经成为了一个越来越难的事情了,通过对d3对数据的查找分析,发现D3的查找是基于文档树实现的,其类似于CSS中的样式定位,查找的对象主要是由标签、id标识、class标识等三个部分组成;而查找的数量也是一个和多个两种模式;查找获得的模式也就是某个文档元素、样式。
(1)基于文档整体的单个查找与多个查找
d3.select(selector) <==>d3.selectAll(selector)
返回的是selection,这正如我们查找娱乐圈是,返回的就是娱乐圈中的所有相关的信息,比如明星等
(2)基于selection的单个查找与多个查找
selection.select(selector) <==> selection.selectAll(selector)
selection.select(d3.selector(selector))<==>selection.selectAll(d3.selector(selector))
返回的是selection,这次就相当于在娱乐圈中找男明星,返回的就是男明星的相关信息。
3)对返回的结果过滤合并
过滤:
selection.filter(filter);其中filter可以是函数也可以是一个选择字符串
selection.filter(d3.matcher(selector))
返回的是selection,这次就相当于找某个电视剧中的男明星;
合并:
selection.merge(other);其中other是其他的selection
返回的是selection,这次就相当于将查找的男明星和女明星统一放到一个结果中
(4)特殊选择——根元素、样式以及window
d3.selection: 选择器根元素,类似于document.documentElement
d3.style(node, name):返回指定元素节点的样式属性值
d3.window(node): 返回指定元素节点所属的窗口
以上就是d3.js中选择的相关信息,总共分成四大类,从基础到中级再到高阶,一步一步的由浅入深逐步展现D3强大的功能,大家可以去尝试使用使用,看看能够发现哪些奇妙的现象啊,欢迎一起交流啊!!