禁用D3plus宽度更改动画

时间:2015-02-18 11:25:07

标签: javascript animation width d3plus

我必须动态更改D3plus图表的宽度,问题是宽度的变化不是即时的,但有一个动画可以相应地向下或向上缩放图表,有没有办法禁用这个动画或所有D3plus中的最终动画?

这是我使用的代码:

var visualization = d3plus.viz()
            .container('#' + id)
            .data(data)
            .type('tree_map')
            .id('name')
            .size('value')
            .width($(window).width() - 85)
            .draw();

    $(window).on('orientationchange', function () {
        window.setTimeout(function () {
                visualization.width($(window).width() - 85).draw();
        }, 200);
    });

2 个答案:

答案 0 :(得分:0)

你看过Transitions了吗? 无法在不显示如何更改width属性的情况下进行测试,但如果设置.transition(0)则会立即更新您正在更改的内容(宽度或任何样式)。

如果将.duration(3000)的值更改为.duration(0)[第46行],则使用此JSFiddle,动画会消失。

动画: http://jsfiddle.net/k5rw9qr5/

.duration(0)http://jsfiddle.net/pha367zu/1/

答案 1 :(得分:-1)

D3plus documentation列出了可以修改的.timing()方法。您可能希望将转换时间设置为零:

visualization.timing({"transitions": 0})