python - matplotlib 中营业时间内的时间序列连续图
问题描述
我有一个熊猫数据框,其中包含大约一个月的 9:30 - 4:00 pm 的市场数据。当我使用 matplotlib 绘制它时,有与每晚市场关闭时间相对应的长平坦区域,以及周末更长的平坦区域。有没有办法告诉它只在工作时间绘制,这样平坦的区域就会消失?
编辑
“重复答案”不是解决方案,而是一种解决方法。这甚至不是一个好的解决方法,因为它使所有数据均匀分布,而不考虑时间戳。我想知道是否有某种类型的日历对象知道我可以使用的营业时间和营业日。抱歉,我在原始帖子中没有更清楚。
解决方案
您可以先过滤数据。例如,如果您要在数据框中进行绘图activity
,date
并且df
希望在不存在date
时排除绘图,activity
那么您可以...
df_activity = df[df['activity'] > 0].copy()
df_activity.plot(x='date', y='activity', kind='line')
这也利用了pandas plot 方法,它允许直接绘制数据帧。
或者,如果您在营业时间内可能有零时段,您可以过滤掉特定的日期/时间activity
。
推荐阅读
- java - 如何在 Java 中对用户定义的双向链表进行排序?
- c++ - 如何使用 SHA1 散列算法在 C++ 中散列系统时间?
- protractor - protractorBy 是做什么的?
- javascript - 有没有办法从 xml 文档中获取版本和编码?
- reactjs - 从一个函数中获取值并将其传递给另一个函数
- python - 如何迭代字典中的值?
- javascript - 在 JavaScript 中使用 For of Loop 创建和突出显示元素
- python - 如何将字符串传递到子进程模块?
- ruby-on-rails - 自定义刺激反射类
- terminal - 有没有办法在 v 中获得终端宽度?