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

Làm thế nào để vẽ hàng nghìn vòng tròn một cách nhanh chóng trong Matplotlib?

Để vẽ nhanh hàng nghìn vòng tròn trong Matplotlib, chúng tôi sẽ phải sử dụng matplotlib.collections . Trong trường hợp này, chúng tôi sẽ sử dụng CircleCollection .

Các bước

  • Nhập gói bộ sưu tập từ matplotlib cùng với pyplot numpy .
  • Đặt kích thước hình và điều chỉnh phần đệm giữa và xung quanh các ô phụ.
  • Khởi tạo các biến "num" cho số lượng vòng tròn nhỏ và "kích thước" cho các kích thước của vòng tròn.
  • Tạo danh sách các bản vá vòng kết nối.
  • Thêm nghệ sĩ vá vòng tròn trên trục hiện tại.
  • Đặt lề của các trục.
  • Để hiển thị hình này, hãy sử dụng show () phương pháp.

Ví dụ

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))

patches = [plt.Circle(center, size) for center, size in zip(xy, sizes)]

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()

Đầu ra

Nó sẽ tạo ra kết quả sau

Làm thế nào để vẽ hàng nghìn vòng tròn một cách nhanh chóng trong Matplotlib? Làm thế nào để vẽ hàng nghìn vòng tròn một cách nhanh chóng trong Matplotlib?