我试图创建一个线图,负时是红色,正时是绿色,正时是绿色,正如在这个post中所建议的。这是通过将数据框拆分为正数据框和负数据框并分别绘制它们来完成的。这是使用以下代码完成的:
plt.figure(figsize=(12,8))
new_df.Performance.where(new_df.Performance.ge(0), np.nan).plot(color='green')
new_df.Performance.where(new_df.Performance.lt(0), np.nan).plot(color='red')
plt.show()
这很好用,但我无法在x轴上绘制日期。它只会绘制数字。我该怎么解决这个问题?
下面是数据框架的简化版本:
Date Performance
8/2/2022 0:00 -1.01
8/2/2022 20:00 -0.0001
8/2/2022 20:00 0.0001
8/3/2022 0:00 0.19
8/4/2022 0:00 2
8/6/2022 0:00 0.0001
8/7/2022 0:00 -0.0001
8/8/2022 0:00 -5
在这里,'Date列是一个datetime对象。
我试着在代码中添加x = 'date'和多个变体,但它不起作用。
1条答案
按热度按时间vptzau2j1#
也许这会工作吗?
import pandas as pd import matplotlib.pyplot as plt