符号生成器
Posted 禅楼望月
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了符号生成器相关的知识,希望对你有一定的参考价值。
符号生成器→d3.symbol,它构造出的函数用于生成一系列符号路径字符串(path标签的d属性值)。数据格式
一个数组即可,因为它们的形状都是固定的,数组的值其实都是没用的,用的只是数组的长度,生成那么多个符号。
var data = d3.range(300)
表示要生成300个符号。
构造器
最简的形式就是
var symbol = d3.symbol();
但是通常我们还想控制它绘出的什么形状,以及形状的大小。d3提供了circle, cross, diamond, square, star, triangle和 wye等7中形状,它们是d3.symbols数组的元素。
因此我们可以构建出如下的构造器:
var symbol = d3.symbol()
.type(function () {return d3.symbols[~~(Math.random()*d3.symbols.length)];})
.size(function (d, i) {return ~~(Math.random()*i);})
上面的构造器,我们定义的type为随机的,在这7个形状中来选择一个,大小也是随机的。然后我们就可以用这个构造器来绘制,这300个图形了:
d3.select("svg").selectAll("path")
.data(data).enter().append("path")
.attr("transform",function (d) {
return "translate("+Math.random() * 600+100+","+Math.random() * 400+100+")";})
.attr("d",symbol)
.attr("stroke",function(d,i){return color(i);})
.attr("stroke-width",2)
.attr("fill","none");
以上是关于符号生成器的主要内容,如果未能解决你的问题,请参考以下文章
c_cpp 这个简单的代码片段显示了如何使用有符号整数在C中完成插值。 for()循环确定要插入的范围
2021-09-11:给你一个32位的有符号整数x,返回将x中的数字部分反转后的结果。反转后整数超过 32 位的有符号整数的范围就返回0,假设环境不允许存储 64 位整数(有符号或无符号)。(代码片段