d3 svg符号语法

时间:2018-09-28 14:07:44

标签: javascript d3.js

我是javascript的新手,正在尝试绘制具有多个符号的散点图。 我碰到了这个page

  1. symbolTypes['circle']和 以下解决方案中的symbolTypes.circle()?后者在 前者引发错误。
  2. 如果“ symbolTypes”是字典,我们不应该使用symbolTypes['circle']吗?

在使用

的公认解决方案中,他们使用字典作为符号生成器
// symbol generators
var symbolTypes = {
    "triangleDown": d3.svg.symbol().type("triangle-down"),
    "circle": d3.svg.symbol().type("circle")
};

然后在解决方案的后面部分中,作者使用:

svg.selectAll("path")
.data(dataSet)
.enter().append("path")
.attr("class", "dot")
// position it, can't use x/y on path, so translate it
.attr("transform", function(d) { 
    return "translate(" + (x(d.hour) + (Math.random() * 12 - 6)) + "," +  y(d.yval) + ")"; 
})
// assign d from our symbols
.attr("d", function(d,i){
    if (d.bar === "0") // circle if bar === 0
        return symbolTypes.circle();
    else
        return symbolTypes.triangleDown();
})
  1. symbolTypes['circle']->使用attr()将圆圈符号与数据绑定在一起时,出现错误。
  2. symbolTypes.circle()->使用此功能,我可以将圆圈添加为 路径元素的属性。

0 个答案:

没有答案