javascript - D3.js:圆形剪切路径不起作用?

标签 javascript d3.js svg

我对这个论坛有点陌生,我一直通过谷歌搜索使用它,这对我有很大帮助,但我认为我偶然发现了一个非常不寻常的问题。我正在尝试从圆形创建剪贴蒙版。我将代码(经过编辑以更具可读性)粘贴到此处,欢迎任何帮助。

结果应该是一个灰色圆圈,而不是我猜的黄色圆圈。

    var circles = svg.selectAll("circleMale")
        .attr("id", "ellipse-clip")
        .data(exhibits)
        .enter()
        .append("svg:circle")

        //.attr("title", function(d) { return nameFn(d); })
        //.attr("fill", "#CCCCCCC")
        .attr("fill", "#FFFF00")

        .attr("stroke-width", 3)
        .attr("stroke", "#FFFFFF")
        .attr("r",100)
        .attr("cx",500)
        .attr("cy",500)
        .attr("opacity", 0.2)

    var clippingPath = svg.append("rect")       
        .attr("x", 125)       
        .attr("y", 75)        
        .attr("clip-path", "url(ellipse-clip)") 
        .style("fill", "lightgrey")   
        .attr("height", 600)    
        .attr("width", 800);   

最佳答案

您有几个问题:

  1. 剪辑路径必须指向 clipPath element ,不是圆

  2. url(ellipse-clip) 不正确,应该是 url(#ellipse-clip)

关于javascript - D3.js:圆形剪切路径不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35603761/

相关文章:

html - 更改NVD3中焦点图的背景颜色

javascript - 如何访问 d3.groups 产生的内部数组?

javascript - For循环创建同心圆环图

javascript - 使用@keyframes 的 mouseout 上的 SVG 反向动画不起作用

javascript - 浏览器显示: Can't Find Variable: $?

javascript - 使用 HTML5 将两个 Canvas 方 block 设置到 Canvas 的中心

javascript - 使用 d3.js 在 svg 中创建具有模糊笔划的矩形

html - SVG Fallback 在标准中工作,但在 IE8、IE9 怪癖中不工作

javascript - 无法设置未定义的属性 'x'

javascript - 为什么我的 HTML 文本没有随着这个 JS 而改变?