Computer >> Máy Tính >  >> Lập trình >> Python

Làm thế nào để viết văn bản phía trên các thanh trên một biểu đồ thanh (Python Matplotlib)?

Để viết văn bản phía trên các thanh trên một biểu đồ thanh, chúng ta có thể thực hiện các bước sau

  • Đặt kích thước hình và điều chỉnh phần đệm giữa và xung quanh các ô phụ.
  • Tạo danh sách của năm , dân số x . Khởi tạo một biến chiều rộng.
  • Tạo một hình và một tập hợp các lô con bằng phương thức subplots ().
  • Đặt ylabels , tiêu đề , xtickas xticklabels .
  • Vẽ đồ thị các thanh bằng bar () phương pháp với x , dân số và dữ liệu chiều rộng.
  • Lặp lại các bản vá lỗi thanh và đặt văn bản ở đầu các thanh bằng cách sử dụng text () phương pháp.
  • Để hiển thị hình này, hãy sử dụng show () phương pháp.

Ví dụ

from matplotlib import pyplot as plt
import numpy as np
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
years = [1901, 1911, 1921, 1931, 1941, 1951, 1961, 1971, 1981, 1991, 2001, 2011]
population = [237.4, 238.4, 252.09, 251.31, 278.98, 318.66, 361.09,
439.23, 548.16, 683.33, 846.42, 1028.74]
x = np.arange(len(years)) # the label locations
width = 0.35 # the width of the bars
fig, ax = plt.subplots()
ax.set_ylabel('Population(in million)')
ax.set_title('Years')
ax.set_xticks(x)
ax.set_xticklabels(years)
pps = ax.bar(x - width / 2, population, width, label='population')
for p in pps:
height = p.get_height()
ax.text(x=p.get_x() + p.get_width() / 2, y=height+.10,
s="{}".format(height),
ha='center')
plt.show()

Đầu ra

Làm thế nào để viết văn bản phía trên các thanh trên một biểu đồ thanh (Python Matplotlib)?