【发布时间】:2021-09-02 19:44:33
【问题描述】:
我开始了解有关 plotly 和 pandas 的更多信息,并且我希望使用 plotly.express 功能绘制多变量时间序列并与之交互。我还希望我的绘图到一个水平滚动条,以便初始绘图用于预先指定的初始时间间隔。这是我的示例,涉及三个时间序列以及 10 万个时间点:
import plotly.express as px
import numpy as np
import pandas as pd
np.random.seed(123)
e = np.random.randn(100000,3)
df=pd.DataFrame(e, columns=['a','b','c'])
df['x'] = df.index
df_melt = pd.melt(df, id_vars="x", value_vars=df.columns[:-1])
fig=px.line(df_melt, x="x", y="value",color="variable")
fig.show()
(出于我的最终目的,时间序列会更大——可能在 900K+ 时间点中包含 40 到 70 个时间序列。)
这会创建一个图表,我可以使用 plotly.express 功能(如缩放、平移、矩形选择等)与之交互。
有没有一种方法可以增强它,使初始图仅显示前 500 个时间点,并且滚动条允许我调查随着时间的增加会发生什么?
使用带有 IDLE 的 Mac OS 10.15.4 和 Python 3.7。我希望在 IDLE 中而不是在 Jupyter 笔记本环境中创建它。
【问题讨论】:
-
非常好——非常感谢。对于我自己的系列,时间点的数量非常多(~900K),通常有 40-70 个系列。我假设在我的网络浏览器中创建图形所需的时间实际上只是我机器的一个功能,除了下采样/抽取之外,我没有什么办法可以加快这个过程?
-
@hfshbacp 乐于助人!您会考虑将我的建议标记为已接受的答案吗?关于时间和速度,请考虑发布一个单独的问题。我非常希望看到自己的答案
标签: python plotly plotly-python