Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีการพล็อตวงกลมหลายพันวงอย่างรวดเร็วใน Matplotlib?


ในการพล็อตวงกลมหลายพันวงอย่างรวดเร็วใน Matplotlib เราจะต้องใช้ matplotlib.collections . ในกรณีนี้ เราจะใช้ CircleCollection .

ขั้นตอน

  • นำเข้าแพ็คเกจคอลเลกชันจาก matplotlib พร้อมกับ pyplot และ อ้วน .
  • กำหนดขนาดรูปและปรับช่องว่างภายในระหว่างและรอบๆ แผนผังย่อย
  • เริ่มต้นตัวแปร "num" สำหรับจำนวนวงกลมขนาดเล็กและ "ขนาด" สำหรับขนาดของวงกลม
  • สร้างรายการแพทช์วงกลม
  • เพิ่มศิลปินแพทช์วงกลมบนแกนปัจจุบัน
  • กำหนดระยะขอบของแกน
  • หากต้องการแสดงรูป ให้ใช้ show() วิธีการ

ตัวอย่าง

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

ผลลัพธ์

มันจะสร้างผลลัพธ์ต่อไปนี้

วิธีการพล็อตวงกลมหลายพันวงอย่างรวดเร็วใน Matplotlib? วิธีการพล็อตวงกลมหลายพันวงอย่างรวดเร็วใน Matplotlib?