【问题标题】:Is it possible to re-render a d3.js graph live?是否可以实时重新渲染 d3.js 图形?
【发布时间】:2019-07-16 18:58:40
【问题描述】:

所以我有一个用 D3.js (v4) 制作的图表,它具有这样的域规模:

...
.domain([domainA, domainB})
...

domainAdomainB 都是使用特定值定义的变量,例如:

var domainA = 500;
var domainB = 1000;

我的 HTML 页面中有一个函数,当按下按钮时,它会更新 domainAdomainB 的值。但是,直到我单击整个图表上的条形图之一,我的图表的域比例才会改变。

我想知道如何能够重新渲染图形,以便能够在 domainAdomainB 的值发生更改时立即设置域比例,而不必单击其中一个更新图表。

谢谢,任何帮助都很棒!

【问题讨论】:

    标签: javascript d3.js graph


    【解决方案1】:

    您可以使用 setInterval 查看新值:

    setInterval(()=> {
             if (domainValue !== domainValueOld){
                render()
             }
       }, 100)
    

    每隔 100 毫秒,将检查 domainValue,如果它已更改,将执行渲染函数。

    【讨论】:

    • 所以在这方面,我必须设置 domainValue 和 domainValueOld 还是这些预设?
    • 你必须设置它们。这只是为了展示你可以用 setInterval 做什么
    • 好吧,好像成功了。感谢您向我介绍 setInterval
    猜你喜欢
    • 2013-09-29
    • 2021-07-22
    • 1970-01-01
    • 2016-06-30
    • 1970-01-01
    • 1970-01-01
    • 2012-02-19
    • 2013-06-28
    • 1970-01-01
    相关资源
    最近更新 更多