Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Thay đổi độ trong suốt/bán trong suốt của Table Matplotlib

Để thay đổi độ trong suốt (transparency/opaqueness) của bảng (table) trong Matplotlib, bạn có thể thực hiện theo các bước sau:

Các bước thực hiện

  • Thiết lập kích thước hình vẽ và điều chỉnh khoảng cách giữa các subplot.
  • Tạo figure và tập hợp subplot.
  • Tạo tập dữ liệu ngẫu nhiên kích thước 10×3.
  • Tạo tuple các cột (columns).
  • Ẩn các dấu hiệu trục tọa độ bằng axis('off').
  • Tạo bảng với dữ liệu và nhãn cột.
  • Duyệt qua từng ô của bảng và thay đổi độ trong suốt bằng phương thức set_alpha().
  • Sử dụng phương thức show() để hiển thị hình vẽ.

Ví dụ minh họa

import numpy as np
from matplotlib import pyplot as plt

plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True

fig, axs = plt.subplots(1, 1)
data = np.random.random((10, 3))
columns = ("Column I", "Column II", "Column III")

axs.axis('off')
the_table = axs.table(cellText=data, colLabels=columns, loc='center')

for k, cell in the_table._cells.items():
    cell.set_edgecolor('black')
    if k[0] == 0 or k[1] < 0:
        cell.set_text_props(weight='bold', color='w')
        cell.set_facecolor('red')
        cell.set_alpha(0.5)
    else:
        cell.set_facecolor(['green', 'yellow'][k[0] % 2])
        cell.set_alpha(0.5)

plt.show()

Kết quả đầu ra

Bảng dữ liệu với hàng tiêu đề màu đỏ, các hàng dữ liệu xen kẽ xanh lá/vàng, tất cả có độ trong suốt 50% (alpha=0.5).