【发布时间】:2021-09-03 14:36:51
【问题描述】:
我正在努力使用 python、pandas 和 matplotlib 制作质量图表。目标是制作一个基于时间的漂亮折线图,然后基于布尔值,使用某种指标(可能是顶部的散点图)显示是否为 TRUE。
现在,它正在发生,但很难看到它,因为圆圈会覆盖线。时间范围也可以更改为 1 年或 5 年,因此点必须进行调整。此外,图例未显示。
def plot_stock(stock_prices_bollinger, ticker):
plt.title(ticker)
# y label
plt.ylabel('stock price')
# and a legend
plt.legend(loc='upper right')
plt.plot(stock_prices_bollinger['Price'])
return plt.scatter(
stock_prices_bollinger.index,
stock_prices_bollinger['Price'],
c=stock_prices_bollinger['breakout'])
然后调用函数如下:
ticker = 'MMM'
from_date = '2011-01-01'
to_date = '2016-10-01'
Prices = stock_info(ticker, pd.to_datetime(from_date, format='%Y-%m-%d'),
pd.to_datetime(to_date, format='%Y-%m-%d'))
Prices_breakout = bollinger(Prices)
plot_stock(Prices_breakout, ticker)
【问题讨论】:
-
您的 plt.plot 和 plt.scatter 中没有任何标签,因此未显示图例。
标签: python matplotlib