我必须动态更改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);
});
答案 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})