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

วิธีแสดง Figure ที่ถูกปิดแล้วใน Matplotlib

ในการแสดง figure ที่ถูกปิดแล้วใน Matplotlib เราสามารถสร้าง Canvas Manager ใหม่และเก็บ figure ก่อนหน้าลงใน figure ใหม่ของ Canvas

ขั้นตอน

  • ตั้งค่าขนาดรูปและปรับ padding ระหว่างและรอบ subplots
  • สร้าง figure ใหม่หรือเปิดใช้งาน figure ที่มีอยู่
  • สร้างจุดข้อมูล x และ y ด้วย numpy
  • พลอต x และ y ด้วยเมธอด plot()
  • ปิด figure ปัจจุบันที่ plot อยู่
  • ตอนนี้ เก็บ figure ก่อนหน้าใน figure ใหม่ของ Canvas
  • ตั้งค่า Canvas ที่มี figure
  • เพื่อแสดงรูป ใช้เมธอด show()

ตัวอย่าง

import numpy as np
from matplotlib import pyplot as plt

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

fig = plt.figure()
x = np.linspace(-10, 10, 100)
y = np.sin(x)
plt.plot(x, y)
plt.close(fig)

new_fig = plt.figure()
new_manager = new_fig.canvas.manager
new_manager.canvas.figure = fig
fig.set_canvas(new_manager.canvas)
plt.show()

ผลลัพธ์

วิธีแสดง Figure ที่ถูกปิดแล้วใน Matplotlibวิธีแสดง Figure ที่ถูกปิดแล้วใน Matplotlib