【问题标题】:Plotlty: How to change transition time in animated heatmap?Plotly:如何更改动画热图中的过渡时间?
【发布时间】:2021-02-24 16:06:56
【问题描述】:

我正在 python 中使用 plotly 构建一个动画热图(就像 here 所做的那样)。

我只是想让过渡更快(我有一千步)。

这是来自 @rpanai 的代码,我想修改

import numpy as np
import plotly.graph_objs as go

N = 50
M = np.random.random((N, 10, 10))

fig = go.Figure(
    data=[go.Heatmap(z=M[0])],
    layout=go.Layout(
        title="Frame 0",
        updatemenus=[dict(
            type="buttons",
            buttons=[dict(label="Play",
                          method="animate",
                          args=[None])])]
    ),
    frames=[go.Frame(data=[go.Heatmap(z=M[i])],
                     layout=go.Layout(title_text=f"Frame {i}")) 
            for i in range(1, N)]
)

fig.show()

谢谢!

【问题讨论】:

    标签: python animation plotly heatmap


    【解决方案1】:

    只需替换:

    args=[None])])]
    

    与:

    args=[None, {"frame": {"duration": 1000, "redraw": True},}])])]
    

    并将1000(即毫秒)更改为适合您需要的持续时间。

    完整代码:

    import numpy as np
    import plotly.graph_objs as go
    
    N = 50
    M = np.random.random((N, 10, 10))
    
    fig = go.Figure(
        data=[go.Heatmap(z=M[0])],
        layout=go.Layout(
            title="Frame 0",
            updatemenus=[dict(
                type="buttons",
                buttons=[dict(label="Play",
                              method="animate",
                              args=[None, {"frame": {"duration": 2000, "redraw": True},}])])]
        ),
        frames=[go.Frame(data=[go.Heatmap(z=M[i])],
                         layout=go.Layout(title_text=f"Frame {i}")) 
                for i in range(1, N)]
    )
    
    fig.show()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-03
      • 1970-01-01
      • 1970-01-01
      • 2012-07-07
      • 2017-10-13
      • 2012-02-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多