Javascript 如何画三角形符号?

Javascript 如何画三角形符号?,javascript,d3.js,Javascript,D3.js,我正在尝试实现,但在D3V4中失败了 triangles = []; triangles.push({x : 250}); triangles.push({x : 350}); var group = svgContainer.append('g').attr('transform','translate('+ xOffset +','+ 30 +')'); var arc = d3.symbol().type('triangle'); var line = group.selectAll(

我正在尝试实现,但在D3V4中失败了

triangles = [];
triangles.push({x : 250});
triangles.push({x : 350});

var group = svgContainer.append('g').attr('transform','translate('+ xOffset +','+ 30 +')');
var arc = d3.symbol().type('triangle');

var line = group.selectAll('path')
            .data(triangles)
            .enter()
            .append('path')
            .attr('d',arc)
            .attr('fill','red')
            .attr('stroke','#000')
            .attr('stroke-width',1)
            .attr('transform',function(d){ return "translate("+(d.x)+",0)"; }); 
错误:

未捕获的TypeError:type.apply(…)。draw不是函数

而不是

type("triangle")
。。。它必须是:

type(d3.symbolTriangle)
下面是D3V4.x中的符号列表

下面是演示:

var svg=d3.选择(“svg”);
三角形=[];
三角推({
x:150
});
三角推({
x:50
});
var arc=d3.symbol().type(d3.symbolTriangle);
var line=svg.selectAll('path')
.数据(三角形)
.输入()
.append('路径')
.attr('d',弧)
.attr('fill','red')
.attr('stroke','#000')
.attr('笔划宽度',1)
.attr('transform',函数(d){
返回“translate(“+d.x+”,30)”;
});


哦,太酷了,谢谢,我会试试的!我怎样做下向三角形?通过旋转符号来添加变换?是的,这是一种方法。我将其添加到您的示例中