javascript - D3 中的 "Progress dots",Wolfram 风格

标签 javascript svg d3.js progress-bar

Wolfram(数学相关网站)有以下进度条(或者我应该说进度点):

enter image description here

您可以在实际中看到它 here .

这将如何在 D3 中实现?

这是我写的codepen在 D3 中,有一些不同的想法:

enter image description here

也许它可以作为一个起点。

最佳答案

如果您只想让您生成的圆圈以动画的形式出现和消失,这会起作用。

我喜欢你最好的圆生成器,但如果它生成如下所示的数据数组会更容易:

[
{x: 14, y: 15, r: 5},
{x: 200, y: 100, r:8}
]

对于这样的数组,您可以使用转换链:

svg.selectAll("circle")
    .data(generatedCircleArray)
    .enter()
    .append("circle")
    .attr("r", 0)
    .attr("cx", function(d) {return d.x})
    .attr("cy", function(d) {return d.y})
    .transition()
    .delay(function() {return Math.random() * 500})
    .each(animate)

function animate() {
  var circle = d3.select(this);
  (function repeat() {
    circle = circle.transition()
        .attr("r", function(d) {return r})
      .transition()
        .attr("r", 0)
        .each("end", repeat);
  })();
}

改编自this example.

这应该显示圆圈的动画存在和消失。您可以将其与不透明度动画或改变不透明度相结合以将其混合。

关于javascript - D3 中的 "Progress dots",Wolfram 风格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27880534/

相关文章:

javascript - 如何在聊天时追踪好友的IP地址

html - CSS 类对 svg 元素没有影响

javascript - D3 : Yet another "Cannot read property ' weight' of undefined"

javascript - 如何使用 jQuery 查找已调整大小的元素

javascript - 如何使用 jQuery 显示 "busy"指标?

javascript - 尝试配置 WebGL

javascript - 在版本 1.7.2 之后更新 jquery 后,无法使用 jquery 命名空间选择器

javascript - Javascript 中 SVG 路径的 onDrop 事件

json - 使用d3.json导入本地json文件不起作用

javascript - 缩放 D3 map 时出错