我正在生成一个图从ML模型是预测股票价格从雅虎金融。
该图由actual_prices
+ predicted_prices
组成。
我想将x轴值更改为测试数据时间范围,但当我尝试设置xlim
时,这会完全删除图。
我需要这些相同的图,但将0-500 x轴值更改为test_start
和test_end
日期时间值,如第二张图片:
当我包括plt.gca().set_xlim(test_start, test_end)
'时,图消失:
相关代码:
- 加载测试数据
test_start = dt.datetime(2020, 9, 19)
test_end = dt.datetime.now()
test_data = web.DataReader(company, 'yahoo', test_start, test_end)
actual_prices = test_data['Close'].values
- 绘图
plt.plot(actual_prices, color='black', label=f"Actual {company} Price")
plt.plot(predicted_prices, color='green', label=f"Predicted {company} Price")
plt.title(f'Predicted {company} Share Price for tomorrow: {prediction}')
#plt.gca().xaxis.set_major_locator(mdates.DayLocator(interval=500))
#plt.gca().set_xlim(time_start, time_end)
plt.xlabel(f'Data shown from {time_start} until {time_end}')
plt.ylabel(f'{company} Share Price')
plt.legend()
plt.show()
我想这可能是因为日期time_start
和time_end
不存在于predicted_prices
np.array
中,因此无法绘制?如果是这样,我如何绘制日期与actual_prices
之间的关系,同时还包括predicted_prices
线?
1条答案
按热度按时间bzzcjhmw1#
您需要提交指数本身,即日期,然后是价格数据。下面我给予了一个例子,有两条线,数据有不同的长度,我把数据通过切片,并把它放在绘图。如果没有预测价格的日期数据,那么您需要创建一个,并把它放在ax.plot。
更新