【问题标题】:How can I generate a line animation for the stocks data using plotly?如何使用 plotly 为股票数据生成线条动画?
【发布时间】:2021-11-24 09:58:42
【问题描述】:

嘿,我正在尝试为内置的股票数据制作线条动画。 所以我在下面尝试了这段代码 https://plotly.com/python/animations/ 但没有显示。

import plotly.express as px
df = px.data.stocks()
fig = px.line(df, x = 'date', y=df.columns[1:6], animation_frame = 'date')
fig.show()

我本来打算做的是6家公司股价的线条动画 关于日期。我对情节完全陌生,所以这可能是一个愚蠢的问题,但如果你们能提供帮助,我将不胜感激。谢谢!

【问题讨论】:

  • 你在 jupyter notebook 中运行它吗?
  • @DimKoim 是的,我正在使用 jupyter notebook
  • @DimKoim 我试过了,但它不起作用。我认为我的代码有问题,但找不到。无论如何感谢您的帮助
  • 打印DataFrame时的输出是什么?

标签: python animation plotly


【解决方案1】:
  • 您需要在 x 轴和 y 轴的动画帧之间保持一些一致性
  • 为了实现这一点,我修改为使用日期作为 xaxis 并确保范围适用于 yaxis 中的所有帧
  • 然后使用月/年作为动画(仅当要绘制多个值时,一条线才有意义),因此每一帧中都有一组值
import plotly.express as px
import pandas as pd

df = px.data.stocks()
df["date"] = pd.to_datetime(df["date"])
fig = px.line(df, x = df["date"].dt.day, y=df.columns[1:6], animation_frame=df["date"].dt.strftime("%b-%Y"))
fig.update_layout(yaxis={"range":[0,df.iloc[:,1:6].max().max()]})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-26
    • 2021-11-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-15
    • 1970-01-01
    • 1970-01-01
    • 2016-04-11
    相关资源
    最近更新 更多