使用 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 轴日期上显示不正确的年份的主要内容,如果未能解决你的问题,请参考以下文章

熊猫散点图日期时间

将熊猫 groupby 中的组绘制在一个图中时如何更改 x 轴

熊猫时间序列图设置 x 轴主要和次要刻度和标签

在日期轴上绘制函数

如何在绘图图中整齐地或以一定间隔的形式显示 X 轴日期刻度

如何在熊猫中获得多级 x 轴标记图?