Python/Matplotlib中是否有在绘图中设置标记线的选项?(每周、每月、每年)



我有以下问题,标题基本上说明了一切:我用matplotlib绘制了年度数据:

年度数据图

由于这些数据跨越了5年多的时间,阅读剧情会非常混乱和混乱。

因此,我的问题是,是否有一种选择可以实现以下目标:

带有年度标记的绘图

当然,每月或每年都要做到这一点是切实可行的。我一直在寻找解决方案,但由于英语不是我的母语,所以很难用语言表达我的问题。

dfx=data2["Date"]
dfx = pd.to_datetime(dfx, errors='coerce')
data2['dfx']=dfx
weekly_data = data2.groupby("stuff").resample('W', 
on='dfx').sum().reset_index().sort_values(by='dfx')
weekly_data.set_index("dfx",inplace = True)
fig, ax = plt.subplots(figsize=(65,17))
#set ticks every week
ax.xaxis.set_tick_params(reset=True)
ax.xaxis.set_major_locator(mdates.MonthLocator())
#set major ticks format
ax.xaxis.set_major_formatter(mdates.DateFormatter('%m %Y'))
weekly_data["stuff"].plot(x_compat=True,ax=ax,marker='o',markerfacecolor="red")
plt.title(ex)
plt.xlabel("Date")
plt.ylabel("Stuff")
weekly_data["Stuff"].plot(x_compat=True, ax=ax)

出于保密的原因,我不得不删除一些情节。如果能就此事提供意见,我将不胜感激。

向致以最良好的问候

您可能正在寻找类似matplotlib.pyplot.vlines的东西,它允许您在某些x值处创建垂直线。有关更多信息,请访问文档,可在此处找到:https://matplotlib.org/3.1.1/api/_as_gen/matplotlib.pyplot.vlines.html

最新更新