enter image description here
我想清理一些matplotlib图像,从January刻度旁边的每个x中删除年份。
这是我的代码:
df_ref1 = data.groupby(['ref_date'])['fuel'].value_counts().unstack()
fig, ax = plt.subplots(figsize=(6,4), dpi=200);
df_ref1.plot(ax=ax, kind='bar', stacked=True)
ax.set_title('Distribuição de tipo de combustível')
ax.spines[['top','right', 'left']].set_visible(False)
ax.set_xlabel('')
plt.xticks(rotation = 45,ha='right');
ax.legend(['Gasolina','Disel', 'Álcool'],bbox_to_anchor=(.85, .95, 0, 0), shadow=False, frameon=False)
plt.tight_layout()
我尝试使用:
ax.xaxis.set_major_formatter('%Y/%m')
ax.xaxis.set_minor_formatter('%m')
尝试使用:
ax.xaxis.set_major_formatter(DateFormatter('%Y/%m'))
ax.xaxis.set_minor_formatter(DateFormatter('%m'))
但最后转到了1970/01年
但没有成功。有线索吗?
1条答案
按热度按时间fhity93d1#
一种方法是首先截断标签,只显示年份和月份,然后只显示每隔n个(在您的情况下是第12个)标签,这样您就可以看到每年的第一个月。
我用的数据...
更新的代码...
输出图