【问题标题】:D3.js Bilevel Partition - initial chart load zoomed on sliceD3.js Bilevel Partition - 初始图表加载在切片上缩放
【发布时间】:2015-12-01 03:04:28
【问题描述】:

我想知道是否有一种方法可以启动 D3.js 双级分区,放大切片,而不是显示所有值的默认值。这可能吗?

双层分区: http://bl.ocks.org/mbostock/5944371

一种可能的解决方案是编写一些自动单击其中一个切片的代码。

另一种备份解决方案是创建单独的图表 - 一个仅包含缩放切片中的数据和用于加载第二个图表的单独按钮。

或者取而代之的是一个更新按钮,其中放大的切片是最初存在的唯一数据,然后通过单击该按钮添加其余数据。 (如何实现呢?)

【问题讨论】:

    标签: javascript d3.js


    【解决方案1】:

    的算法“一个可能的解决方案是编写一些自动点击其中一个切片的代码。”

    这将像这样选择你想要的节点:

      path[0].every(function(p){
        var d = d3.select(p).data();
        //put the name of the node you wish to zoom on i have put "Arrays"
        if (d[0].name == "Arrays"){
          var k = d[0];
          zoomIn(k);
          return false;
        }
        return true;
      });
    

    完整的工作代码here

    希望这会有所帮助!

    【讨论】:

    • 这个方法效果很好!虽然如果有办法在一开始就删除动画会很好。关键是向观众隐藏其他切片,而过渡则将其暴露出来。
    • 现在试试这个plnkr.co/edit/hZIkaToanYERNDDfycYq?p=preview 我正在快速传递第三个参数,当它为真时延迟将为 0。if(fast ==true) delay = 0; 行号:176-178。因此,在第一次加载时,我将此值作为 true 传递 ..但在其他情况下从不传递。
    猜你喜欢
    • 2015-06-21
    • 2013-04-17
    • 2013-06-26
    • 2018-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-20
    • 2018-02-17
    相关资源
    最近更新 更多