gpt4 book ai didi

python - 如何使用 Plotly 从 plotly 中删除周末?

转载 作者:行者123 更新时间:2023-12-04 09:31:25 24 4
gpt4 key购买 nike

我正在尝试从这个时间序列图中删除周末间隙。 x 轴是数据时间戳。我试过这个 site 上的代码,但无法使其正常工作。参见 sample file用过

数据是这样的

+-----------------------+---------------------+-------------+-------------+
| asof | INSERTED_TIME | DATA_SOURCE | PRICE |
+-----------------------+---------------------+-------------+-------------+
| 2020-06-17 00:00:00 | 2020-06-17 12:00:15 | DB | 170.4261757 |
+-----------------------+---------------------+-------------+-------------+
| 2020-06-17 00:00:00 | 2020-06-17 12:06:10 | DB | 168.9348656 |
+-----------------------+---------------------+-------------+-------------+
| 2020-06-17 00:00:00 | 2020-06-17 12:06:29 | DB | 168.8412129 |
+-----------------------+---------------------+-------------+-------------+
| 2020-06-17 00:00:00 | 2020-06-17 12:07:27 | DB | 169.878796 |
+-----------------------+---------------------+-------------+-------------+
| 2020-06-17 00:00:00 | 2020-06-17 12:10:28 | DB | 169.3685879 |
+-----------------------+---------------------+-------------+-------------+
| 2020-06-17 00:00:00 | 2020-06-17 12:12:14 | DB | 169.0787045 |
+-----------------------+---------------------+-------------+-------------+
| 2020-06-17 00:00:00 | 2020-06-17 12:12:33 | DB | 169.7561092 |
+-----------------------+---------------------+-------------+-------------+

plotly 包括周末休息

使用 line 函数我得到了下面的图,直线从星期五结束到星期一早上。使用 px.scatter,我没有得到线,但我仍然得到了差距。

import plotly.express as px
import pandas as pd

sampledf = pd.read_excel('sample.xlsx')

fig_sample = px.line(sampledf, x = 'INSERTED_TIME', y= 'PRICE', color = 'DATA_SOURCE')
fig_sample.show()

enter image description here

尝试没有周末休息

fig_sample = px.line(sampledf, x = 'INSERTED_TIME', y= 'PRICE', color = 'DATA_SOURCE')
fig_sample.update_xaxes(
rangebreaks=[
dict(bounds=["sat", "mon"]) #hide weekends
]
)
fig_sample.show()

enter image description here

使用rangebreaks 会生成空白图。

感谢任何帮助。谢谢

最佳答案

使用 rangebreaks 时有 1000 行的限制当处理超过 1000 行时,添加参数 render_mode='svg'

在下面的代码中,我使用了 scatter 函数,但如您所见,周末的大间隔已不复存在。此外,我排除了晚上 11 点到上午 11 点之间的时间

sampledf = pd.read_excel('sample.xlsx')

fig_sample = px.scatter(sampledf, x = 'INSERTED_TIME', y= 'PRICE', color = 'DATA_SOURCE', render_mode='svg')
fig_sample.update_xaxes(
rangebreaks=[
{ 'pattern': 'day of week', 'bounds': [6, 1]}
{ 'pattern': 'hour', 'bounds':[23,11]}
]
)
fig_sample.show()

enter image description here

图中的值与原始数据集不同,但适用于原始帖子中的数据。找到帮助here

关于python - 如何使用 Plotly 从 plotly 中删除周末?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62824368/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com