d3创建多个svg元素

Posted 大棒子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了d3创建多个svg元素相关的知识,希望对你有一定的参考价值。

当然也可以创建dom

 

var svg = d3.select(‘#svg‘);

svg .slectAll(‘circle.bb‘)     //选中DOM中的所有circle.bb标签,当DOM中不存在circle.bb时,那么这个返回值将是null

  .data(new Array(50))   //计算并且传递数组的值,数组长度为50,因此所有经过此节点的处理过程将处理50次,每次对应数组中不同的元素值

  .enter()    //创建新的DOM元素,当数组的数据被传递至此,数组中的元素个数多于DOM中已有的circle.bb个数,enter()将会创建新的circle.bb元素来补充(推荐Google一下enter()和exit()具体使用方法)

  .append(‘circle‘)  //这里的circle.bb不够分时就创建一个circle。。。

  .attr(‘cx‘,function(){

    return svvg.width() / 2 + Math.random() * 40;
   })
  .attr(‘cy‘,function(){
    return svvg.height() / 2 + Math.random() * 40;
  })
  .attr(‘r‘,5)
  .attr(‘stroke‘,‘rgba(255,0,0,0.7)‘)
  .attr(‘fill‘,‘rgba(255,0,0,0.2)‘);

以上是关于d3创建多个svg元素的主要内容,如果未能解决你的问题,请参考以下文章

D3——绘制SVG图形

在同一个 div 中渲染 Reactjs 多个“d3js”子组件

d3添加多个具有功能的类

如何使用 D3.js 将图像添加到 svg 容器

D3.js 使用函数时如何应用多个类

使用 D3 和 Leaflet 重复 SVG