Matplotlib - อินเทอร์เฟซเชิงวัตถุ
ในขณะที่สร้างพล็อตอย่างรวดเร็วด้วยไฟล์ matplotlib.pyplotโมดูลขอแนะนำให้ใช้วิธีเชิงวัตถุเนื่องจากให้การควบคุมและปรับแต่งพล็อตของคุณได้มากขึ้น ฟังก์ชั่นส่วนใหญ่ยังมีอยู่ในไฟล์matplotlib.axes.Axes ชั้นเรียน
แนวคิดหลักที่อยู่เบื้องหลังการใช้วิธีเชิงวัตถุที่เป็นทางการมากขึ้นคือการสร้างวัตถุรูปแล้วเรียกใช้วิธีการหรือแอตทริบิวต์จากวัตถุนั้น วิธีนี้ช่วยให้จัดการกับผืนผ้าใบที่มีหลายแปลงบนผืนผ้าใบได้ดีขึ้น
ในอินเทอร์เฟซเชิงวัตถุ Pyplot ใช้สำหรับฟังก์ชันบางอย่างเช่นการสร้างรูปและผู้ใช้จะสร้างและติดตามวัตถุรูปและแกนอย่างชัดเจน ในระดับนี้ผู้ใช้จะใช้ Pyplot ในการสร้างตัวเลขและจากตัวเลขเหล่านั้นสามารถสร้างวัตถุแกนได้ตั้งแต่หนึ่งชิ้นขึ้นไป จากนั้นอ็อบเจ็กต์แกนเหล่านี้จะถูกใช้สำหรับการพล็อตการกระทำส่วนใหญ่
ในการเริ่มต้นเราสร้างอินสแตนซ์รูปที่มีผืนผ้าใบว่างเปล่า
fig = plt.figure()
ตอนนี้เพิ่มแกนในรูป add_axes()วิธีการต้องใช้รายการวัตถุ 4 องค์ประกอบที่สอดคล้องกับด้านซ้ายด้านล่างความกว้างและความสูงของรูป แต่ละหมายเลขต้องอยู่ระหว่าง 0 ถึง 1 -
ax=fig.add_axes([0,0,1,1])
ตั้งค่าป้ายกำกับสำหรับแกน x และ y รวมทั้งหัวเรื่อง -
ax.set_title("sine wave")
ax.set_xlabel('angle')
ax.set_ylabel('sine')
เรียกใช้เมธอด plot () ของอ็อบเจ็กต์แกน
ax.plot(x,y)
หากคุณใช้สมุดบันทึก Jupyter ต้องมีการออกคำสั่งแบบอินไลน์% matplotlib ฟังก์ชั่น otherwistshow () ของโมดูล pyplot แสดงพล็อต
พิจารณาดำเนินการตามรหัสต่อไปนี้ -
from matplotlib import pyplot as plt
import numpy as np
import math
x = np.arange(0, math.pi*2, 0.05)
y = np.sin(x)
fig = plt.figure()
ax = fig.add_axes([0,0,1,1])
ax.plot(x,y)
ax.set_title("sine wave")
ax.set_xlabel('angle')
ax.set_ylabel('sine')
plt.show()
เอาต์พุต
บรรทัดโค้ดด้านบนสร้างผลลัพธ์ต่อไปนี้ -
รหัสเดียวกันเมื่อรันในสมุดบันทึก Jupyter จะแสดงผลลัพธ์ดังที่แสดงด้านล่าง -