条形图中单独标记的条形

15 投票
1 回答
29183 浏览
提问于 2025-04-15 18:44

我想在Python中制作字母频率的柱状图。我觉得用matplotlib这个库来做是最好的选择,但我看不懂它的文档。请问在matplotlib.pyplot.hist这个图表中,能不能让每根柱子标上一个字母,而不是用数字来表示?我觉得应该可以,但我之前没有用过matplotlib。

这是我想要的那种图,用文字表示出来是这样的:

|
|    *
|    *  *
| *  *  *
+----------
  A  B  C

1 个回答

34

当然可以!你只需要重置一下刻度标签。

下面是带答案和图片的编辑内容(用hist也可以做到类似的效果):

x = scipy.arange(4)
y = scipy.array([4,7,6,5])
f = pylab.figure()
ax = f.add_axes([0.1, 0.1, 0.8, 0.8])
ax.bar(x, y, align='center')
ax.set_xticks(x)
ax.set_xticklabels(['Aye', 'Bee', 'Cee', 'Dee'])
f.show()

alt text
(来源: stevetjoa.com)

撰写回答