在绘制pandas数据框时显示Jan-Jan的xticks,但仅希望Jan-Dec [重复]

pjngdqdw  于 2023-08-01  发布在  其他
关注(0)|答案(1)|浏览(87)

此问题已在此处有答案

plot year over year on 12 month axis(2个答案)
How to plot each year as a line with months on the x-axis(1个答案)
10天前关闭。
我试图寻找我的问题的答案,但找不到。This问题略有不同,不适合。
我希望我的数字上的xticks只从1月运行到12月,但在我的情况下,它们是从1月运行到1月。见下文。
x1c 0d1x的数据
在每个时间序列中,从01-01到12-31每年有365个点。
代码复制这是下面。

import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import numpy as np
import pandas as pd

ts = pd.Series(np.random.randn(365*4), index=pd.date_range("1/1/2000", periods=365*4))

df = pd.DataFrame(np.random.randn(365*4, 1), index=ts.index, columns=list("A"))
df['year'] = df.index.year
df['date'] = df.index.strftime('%m-%d')
df = df.set_index(['year', 'date']).A.unstack(-2)

fig, axs = plt.subplots(figsize=(14, 5))
df.plot(ax=axs)
axs.xaxis.set_major_locator(mdates.MonthLocator())
axs.xaxis.set_major_formatter(mdates.DateFormatter('%b'))

字符串
我试过删除时间序列中的点。01-0112-31,但这没有帮助。
任何帮助删除最后的Jan xtick将不胜感激。

wvyml7n5

wvyml7n51#

一个选项可能是删除最后一个刻度:

axs.set_xticks(axs.get_xticks()[:-1])

字符串
输出量:


的数据

相关问题