Matplotlib图表X轴标签防重叠后部分标签缺失问题求助
解决X轴标签重叠且部分不显示的问题
以下几种方法可以实现X轴标签无重叠且全部显示:
方法1:自动调整布局+缩小标签字体
通过plt.tight_layout()自动适配图表布局,同时缩小X轴标签字体,避免标签被截断或重叠:
carPriceNew = carPrice.groupby(['CarName']).mean() carPriceNew.plot(y='price') plt.xticks(rotation=90, fontsize=8) plt.tight_layout() plt.show()
方法2:手动调整底部预留空间
如果标签较长,手动设置底部间距能更精准地留出显示空间:
carPriceNew = carPrice.groupby(['CarName']).mean() ax = carPriceNew.plot(y='price') # 设置标签旋转角度和字体大小 ax.set_xticklabels(ax.get_xticklabels(), rotation=90, fontsize=8) # 调整底部间距(0.3为相对值,可根据标签数量/长度灵活修改) plt.subplots_adjust(bottom=0.3) plt.show()
方法3:改用横向条形图(适合类别极多的场景)
如果CarName类别数量特别多,横向条形图能从根源避免X轴标签拥挤问题:
carPriceNew = carPrice.groupby(['CarName']).mean() # 绘制横向条形图,标签显示在Y轴 carPriceNew.plot(kind='barh', y='price') plt.tight_layout() plt.show()
内容的提问来源于stack exchange,提问作者Gotham Knight
相关产品推荐
相关产品推荐

