使用 matplot 的熊猫在 x 轴日期上显示不正确的年份
Posted
技术标签:
【中文标题】使用 matplot 的熊猫在 x 轴日期上显示不正确的年份【英文标题】:Pandas using matplot displays an incorrect year on the x-axis date 【发布时间】:2020-07-15 03:53:10 【问题描述】:在图表中,日期轴未正确显示日期格式,年份应为“2020”并显示为“51”。文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本
# -*- coding: latin-1 -*-
import pandas as pd
import datetime
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
hoje = datetime.datetime.now()
data = hoje.strftime("%Y%m%d")
dados_url = 'https://covid.saude.gov.br/assets/files/COVID19_'+data+'.csv'
try:
print(dados_url)
dados = pd.read_csv(dados_url, sep=';', parse_dates=['data'], dayfirst=True)
except Exception as e:
print("Os dados para a data corrente ainda não foram atualizados, buscando dados do dia anterior...")
print(e)
DD = datetime.timedelta(days=1)
hoje = hoje - DD
data = hoje.strftime("%Y%m%d")
print(str(hoje))
dados_url = 'https://covid.saude.gov.br/assets/files/COVID19_'+data+'.csv'
print(str(dados_url))
dados = pd.read_csv(dados_url, sep=';', parse_dates=['data'], dayfirst=True)
#pd.set_option('display.max_rows', None)
dados_alagoas = dados[dados['estado'] == 'AL']
dados_alagoas.set_index('data',inplace=True)
#print(dados_alagoas)
plt.style.use('ggplot')
fig, ax = plt.subplots(figsize=(30,15))
dados_alagoas.plot(ax=ax, rot=75)
#grafico em barras
#dados_alagoas.plot(ax=ax, rot=75, kind='bar', width=2.0)
ax.xaxis.set_major_locator(mdates.DayLocator(interval=1))
ax.xaxis.set_major_formatter(mdates.DateFormatter('%d/%m/%y'))
ax.set_title('Incidência do COVID-19 em Alagoas em '+hoje.strftime('%d/%m/%Y'))
ax.set_ylabel('Ocorrências')
ax.set_xlabel('Data')
plt.show()
【问题讨论】:
【参考方案1】:我不是很有经验。据我所知,我无法通过更改各种设置来改进它。 我们通过以下方式回应。供您参考
# ax.xaxis.set_major_locator(mdates.DayLocator(interval=1))
# ax.xaxis.set_major_formatter(mdates.DateFormatter('%d/%m/%y'))
ax.set_xticks(dados_alagoas.index)
ax.set_xticklabels(dados_alagoas.index.strftime('%d/%m/%y'))
【讨论】:
以上是关于使用 matplot 的熊猫在 x 轴日期上显示不正确的年份的主要内容,如果未能解决你的问题,请参考以下文章