bcl*_*man 2 python matplotlib pandas
我正在使用 matplotlib 来显示股票价格随时间的变动。我想关注过去 90 天,然后预测接下来的 14 天。我有过去 90 天的数据和我的预测,但我想用不同的颜色绘制我的预测,因此很明显它们是不同的。
我该怎么做?
如果我只是向代码添加第二次plot()调用,预测将从与 90 天的数据相同的点开始并重叠,这不是我想要的。
现在我正在这样做:
df[-90:]["price"].plot()
plt.show()
Run Code Online (Sandbox Code Playgroud)
谢谢!
import matplotlib.pyplot as plt
import numpy as np
last90days = np.random.rand(90)
next14days = np.random.rand(14)
plt.plot(np.arange(90), last90days)
plt.plot(np.arange(90, 90+14), next14days)
plt.show()
Run Code Online (Sandbox Code Playgroud)
希望这是您想要的:
import pandas as pd
import numpy as np; np.random.seed(1)
import matplotlib.pyplot as plt
datelist = pd.date_range(pd.datetime(2018, 1, 1), periods=104)
df = pd.DataFrame(np.cumsum(np.random.randn(104)),
columns=['price'], index=datelist)
plt.plot(df[:90].index, df[:90].values)
plt.plot(df[90:].index, df[90:].values)
# If you don't like the break in the graph, change 90 to 89 in the above line
plt.gcf().autofmt_xdate()
plt.show()
Run Code Online (Sandbox Code Playgroud)