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

การได้ Interactive Plot ใน PyCharm ด้วย Matplotlib

PyCharm โดยค่าเริ่มต้นใช้ Backend แบบ Static (Inline) ทำให้ Plot ไม่โต้ตอบได้ ใช้ mpl.use('Qt5Agg') เพื่อเปลี่ยน Backend เป็น Qt5 ที่รองรับ Interactive

ขั้นตอน

  1. ตั้งค่าขนาด Figure
  2. ตั้งค่า Backend ด้วย mpl.use('Qt5Agg') (ต้องทำก่อน import pyplot)
  3. Plot ข้อมูล
  4. แสดงผลด้วย plt.show()

ตัวอย่างโค้ด


import matplotlib as mpl
import matplotlib.pyplot as plt

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

# ต้องเรียกก่อน import pyplot หรือ plt
mpl.use('Qt5Agg')

plt.plot(range(10))
plt.show()

Backend อื่นๆ ที่ใช้ได้

Backendคำอธิบาย
Qt5AggQt5 - Interactive, ต้องติดตั้ง PyQt5
TkAggTkinter - Interactive, มาพร้อม Python
wxAggwxWidgets - Interactive
MacOSXmacOS Native - Interactive
AggNon-interactive (Default สำหรับไฟล์)

การตั้งค่าใน PyCharm

  1. File → Settings → Tools → Python Scientific
  2. ติ๊ก "Show plots in tool window"
  3. หรือเพิ่มในโค้ด: import matplotlib; matplotlib.use('module://backend_interagg')

ผลลัพธ์

หน้าต่าง Plot แบบ Interactive เปิดขึ้นมา สามารถ Zoom, Pan, Save ได้