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

อัปเดตพล็อตแท่งแบบไดนามิกใน Matplotlib


ในการอัปเดตพล็อตแถบแบบไดนามิกใน Matplotlib เราสามารถทำตามขั้นตอนต่อไปนี้ -

  • กำหนดขนาดรูปและปรับช่องว่างภายในระหว่างและรอบๆ แผนผังย่อย
  • สร้างตัวเลขใหม่หรือเปิดใช้งานตัวเลขที่มีอยู่
  • สร้างรายการจุดข้อมูลและสี
  • พล็อตแถบที่มี ข้อมูล และ สี โดยใช้ bar() วิธีการ
  • ใช้คลาส FuncAnimation() สร้างแอนิเมชั่นโดยการเรียกใช้ฟังก์ชันซ้ำๆ แอนิเมชัน ที่กำหนดความสูงของแถบและสีหน้าของแถบ
  • หากต้องการแสดงรูป ให้ใช้ show() วิธีการ

ตัวอย่าง

import numpy as np
from matplotlib import animation as animation, pyplot as plt, cm

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

fig = plt.figure()

data = [1, 4, 3, 2, 6, 7, 3]
colors = ['red', 'yellow', 'blue', 'green', 'black']
bars = plt.bar(data, data, facecolor='green', alpha=0.75)

def animate(frame):
   global bars
   index = np.random.randint(1, 7)
   bars[frame].set_height(index)
   bars[frame].set_facecolor(colors[np.random.randint(0, len(colors))])

ani = animation.FuncAnimation(fig, animate, frames=len(data))

plt.show()

ผลลัพธ์

อัปเดตพล็อตแท่งแบบไดนามิกใน Matplotlib