我已使用条形图显示以下数据框:
city pred actual
9 j 10.05 12.68
0 a 9.72 9.56
6 g 8.29 9.11
2 c 8.22 8.49
3 d 7.88 7.92
8 i 7.04 7.35
5 f 6.06 6.33
1 b 5.94 6.00
7 h 5.52 5.72
4 e 5.37 5.62
10 k 6.04 5.50
要绘制的代码:
import numpy as np
import matplotlib.pyplot as plt
plt.rcParams["figure.figsize"] = (10, 7)
colors = ['b', 'g', 'r', 'c', 'm', 'y', 'g']
df = df.sort_values(by=['actual'], ascending=False)
ax = df.plot(x="city", y=["actual", "pred"], kind="bar", color = colors, alpha=0.8)
plt.legend(["actual", "pred"], fontsize=15)
plt.gca().set_xticklabels(df['city'])
plt.suptitle("pred vs actual", fontsize=18)
for p in ax.patches:
ax.annotate(np.round(p.get_height(),decimals=2), (p.get_x()+p.get_width()/2., \
p.get_height()), ha='center', va='center', xytext=(0, 10), textcoords='offset points')
plt.tight_layout()
plt.show()
输出: 我正在尝试做的是从x轴隐藏不需要的 city 文本标签。我的预期输出将是这样的:
我该怎么做?谢谢。
答案 0 :(得分:0)
这行代码是我发现的唯一代码:
ax.xaxis.label.set_visible(False)
如果您还有其他解决方案,欢迎分享。