python绘制柱状图在时如何在每一个柱子的顶端标明具体数值,并指定标记的字号?
时间: 2023-05-24 11:03:55 浏览: 128
要在python中绘制柱状图并在每一个柱子的顶端标明具体数值,可以使用matplotlib模块中的annotate函数,其中在参数中指定标记的字号即可。示例代码如下:
```python
import matplotlib.pyplot as plt
# 数据
data = [23, 50, 75, 90, 45]
x = range(len(data))
labels = ['a', 'b', 'c', 'd', 'e']
# 绘制柱状图
plt.bar(x, data)
# 添加数值标记
for a, b in zip(x, data):
plt.annotate(str(b), xy=(a, b), ha='center', va='bottom', fontsize=12)
# 设置x轴标签
plt.xticks(x, labels)
# 设置图像标题和轴标签
plt.title('柱状图')
plt.xlabel('类别')
plt.ylabel('数值')
# 显示图像
plt.show()
```
其中,annotate函数中的参数含义如下:
- str(b):标记文本内容,即要显示的数值;
- xy=(a, b):标记位置,即数值的位置,由柱子的位置和数值决定;
- ha='center':文本水平对齐方式,‘center’表示居中对齐;
- va='bottom':文本垂直对齐方式,‘bottom’表示对齐到柱子顶部;
- fontsize=12:标记文本字号为12号。
阅读全文