python - Matplotlib:将每日刻度更改为月刻度,同时保持绘图相同
问题描述
我有一个这样的数据框:
date_deaths = data[['date', 'deaths']]
deaths_by_date = date_deaths.groupby('date')['deaths'].sum()
我无法让我的情节显示 xticks。但是,当我在没有格式化的情况下进行绘图时,我会得到每日刻度,我想要按月刻度
情节代码:
months = mdates.MonthLocator()
#Plot deaths over time.
fig, ax = plt.subplots(figsize = (12,5))
ax.plot(deaths_by_date, 'r--')
plt.ylabel("Deaths", fontsize = 12)
plt.title('Covid-19 Deaths in the United States', fontsize = 14)
#Format ticks
ax.xaxis.set_major_locator(months)
ax.grid(True)
plt.show()
任何帮助,将不胜感激!
更新:原来我只需要将索引更改为日期时间。这段代码很好地解决了这个问题。
deaths_by_date.index = pd.to_datetime(deaths_by_date.index)
解决方案
推荐阅读
- python - 如何从电报机器人获取chat_id、user_id 和时间?
- wordpress - 从客户端隐藏几个 wordpress 仪表板选项
- java - 使用 java 的 WAN 中的 P2P 连接
- google-analytics - GA Tracking ID 中的正式名称“UA”是什么?
- javascript - QZ 托盘输出打印条码质量低
- java - Hackerrank Mark 和 Toys 质疑我的解决方案不适用于大型输入测试用例
- c# - 远程调试 - .NET Core 调试器不支持 Windows PDB - 如何正确发布?
- php - 将附加的 css 动态保存在单独的文件中 - Wordpress
- c# - C# & NodeJS PBKDF 加密
- python - 你如何在谷歌colab上安装poppler