You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

matplotlib绘制279个观测值条形图x轴标签不可读如何解决

279个观测值条形图x轴标签可识别优化方案

以下方案可在单张图中完成全部279个观测值的绘制,同时保证x轴标签可正常识别:

  • 修正坐标轴边距设置:原有代码中ax = fig.add_axes([0,0,1,1])将坐标轴完全铺满画布,底部没有预留空间放置x轴标签,直接导致标签被截断。建议改用plt.subplots配合边距调整参数,或修改add_axes的底部留白数值。
  • 调整x轴标签参数:279个标签密度极高,原有17号字体过大,建议缩小到7-10号;同时可将旋转角度改为90度垂直排列,节省水平展示空间;也可以设置奇偶标签的垂直偏移,避免相邻标签重叠。
  • 可选优化:将观测值按Deltas数值升/降序排序后再绘图,既能直观展示数值分布趋势,也更方便对应查找目标观测值的标签。

优化后代码示例

import numpy as np
import matplotlib.pyplot as plt

# 此处替换为你自己的Names、Deltas原始数据
# 可选排序步骤,按需开启
sorted_idx = np.argsort(Deltas)
sorted_Names = [Names[i] for i in sorted_idx]
sorted_Deltas = [Deltas[i] for i in sorted_idx]

# 加宽画布、降低高度,优先给x轴标签预留空间
fig, ax = plt.subplots(figsize=(32, 16))
y_pos = np.arange(len(sorted_Names))
ax.bar(y_pos, sorted_Deltas)

# 调整x轴标签参数,缩小字号、垂直旋转
plt.xticks(y_pos, sorted_Names, color='white', rotation=90, fontweight='bold', fontsize=8)
# 调整底部边距,给x轴标签留足够展示空间
plt.subplots_adjust(bottom=0.42)

plt.show()

错位标签优化技巧

如果调整后仍有少量标签重叠,可以添加以下代码让奇偶位置的标签垂直错位显示,进一步避免遮挡:

# 在plt.xticks代码后补充即可
for tick in ax.xaxis.get_major_ticks()[1::2]:
    tick.set_pad(18)

内容的提问来源于stack exchange,提问作者the phoenix

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 06:12:04