javascript - d3 动画的持续时间

标签 javascript animation d3.js

我正在尝试像这样对 d3 中的矩形宽度进行动画处理:

svg.append("rect")
    .attr("x", 10)
    .attr("y", 20)
    .attr("height", 20)
    .style('fill',barColor)
    .transition()
    .attr("width", 200)
    .duration(1000)
    .delay(1000);

我尝试在 1 秒内将宽度增加到 200 像素,但动画没有发生。 有人可以解释一下我做错了什么吗?

最佳答案

您需要设置宽度的初始值,以便 D3 能够插值和过渡:

svg.append("rect")
  .attr("x", 10)
  .attr("y", 20)
  .attr("height", 20)
  .attr("width", 0)
  .style('fill',barColor)
.transition()
  .duration(1000)
  .attr("width", 200);

关于javascript - d3 动画的持续时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28960955/

相关文章:

c# - 在更新面板中调用时,Javascript 确认框不显示

javascript - 在 Canvas 上打乱图像产生空白

javascript - 用完全不同的数据重新绘制图表

javascript - .delay() 不是 d3 中的函数

javascript - 在 Svelte 组件中动态加载模板

javascript - Vite:在构建时替换环境变量

javascript - html javascript 更改我的 <div> 的值,但刷新页面 1 秒,然后全部为 null

javascript - 平滑旋转javascript边缘浏览器问题

ios - 翻转动画中途更改 UIImageView 图像

javascript - 带有自定义日期的数据dimple.js