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

Cách vẽ nhanh hàng nghìn hình tròn trong Matplotlib bằng CircleCollection

Giới thiệu

Để vẽ hàng nghìn hình tròn nhanh chóng trong Matplotlib, bạn nên sử dụng matplotlib.collections, cụ thể là CircleCollection. Cách này hiệu quả hơn nhiều so với việc thêm từng Circle artist riêng lẻ.

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

  • Import collections từ matplotlib cùng với pyplot và numpy.
  • Thiết lập kích thước hình vẽ và padding.
  • Khởi tạo biến num cho số lượng hình tròn và sizes cho kích thước.
  • Tạo danh sách các circle patches (hoặc sử dụng trực tiếp CircleCollection).
  • Thêm collection vào axes hiện tại.
  • Thiết lập margins cho axes.
  • Hiển thị hình vẽ bằng show().

Ví dụ minh họa

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.collections as mc

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

num = 1000
sizes = 50 * np.random.random(num)
xy = 10 * np.random.random((num, 2))

fig, ax = plt.subplots()
collection = mc.CircleCollection(sizes, offsets=xy, transOffset=ax.transData, color='green')
ax.add_collection(collection)
ax.margins(0.01)
plt.show()

Kết quả đầu ra

Hình vẽ 1000 hình tròn ngẫu nhiên được render rất nhanh:

Cách vẽ nhanh hàng nghìn hình tròn trong Matplotlib bằng CircleCollectionCách vẽ nhanh hàng nghìn hình tròn trong Matplotlib bằng CircleCollection