Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否删除d3甜甜圈图表上的标签线?_Javascript_D3.js - Fatal编程技术网

Javascript 是否删除d3甜甜圈图表上的标签线?

Javascript 是否删除d3甜甜圈图表上的标签线?,javascript,d3.js,Javascript,D3.js,我实际上是想删除出现在甜甜圈弧上的标签线的一部分,即希望谎言从甜甜圈图表之外开始。 我使用的代码是 var outerArc = d3.arc() .outerRadius(radius * 0.9) .innerRadius(radius * 0.9); function midAngle(d) { return d.startAngle + ((d.endAngle - d.startAngle)) / 2; } if (lableset

我实际上是想删除出现在甜甜圈弧上的标签线的一部分,即希望谎言从甜甜圈图表之外开始。 我使用的代码是

var outerArc = d3.arc()
            .outerRadius(radius * 0.9)
            .innerRadius(radius * 0.9);

function midAngle(d) { return d.startAngle + ((d.endAngle - d.startAngle)) / 2; }
  if (lablesettings.show) {

        var enteringLabels = svg.selectAll(".polyline").data(pie(viewModel.dataPoints)).enter();
        var labelGroups = enteringLabels.append("g")
                                        .attr("class", "polyline")
                                        .style("fill", "none")
                                        .style("stroke", "grey")
                                        .style("stroke-width", "1px")
                                        .style("opacity", "0.4");

        var line = labelGroups.append("polyline").attr('points', function (d) {
            var arccentroid = arc.centroid(d);
            var pos = outerArc.centroid(d);
            pos[0] = radius * 0.95 * (midAngle(d) < Math.PI ? 1 : -1);
           //var fpos=((arccentroid[0]+pos[0])/2 (arccentroid[1]+pos[1])/2);
           return [arc.centroid(d), outerArc.centroid(d), pos
        });
var outerArc=d3.arc()
.外表面(半径*0.9)
.内半径(半径*0.9);
函数midAngle(d){返回d.startAngle+((d.endAngle-d.startAngle))/2;}
如果(标签设置.显示){
var enteringLabels=svg.selectAll(“.polyline”).data(pie(viewModel.dataPoints)).enter();
var labelGroups=输入labels.append(“g”)
.attr(“类”、“多段线”)
.style(“填充”、“无”)
.style(“笔划”、“灰色”)
.style(“笔划宽度”、“1px”)
.样式(“不透明度”、“0.4”);
var line=labelGroups.append(“polyline”).attr('points',function(d){
var弧形心=弧形心(d);
var pos=外表面质心(d);
位置[0]=半径*0.95*(中间角(d)
请建议我修改,我可以在我的要求土地。
提前感谢:)

您的代码不完整。points数组在它开始感兴趣的地方停止。您可以发布该语句的其余部分吗


从我目前看到的情况来看,我建议从
数组中删除
弧.质心(d)

简单的解决方案?只需先画标签和线,然后在上面画饼图。