add_subplot ()วิธีการที่มีลายเซ็นโทรหลาย
add_subplot(nrows, ncols, index, **kwargs)
add_subplot(pos, **kwargs)
add_subplot(ax)
add_subplot()
<- ตั้งแต่ 3.1.0
โทร 1 และ 2:
การโทร 1 และ 2 ทำสิ่งเดียวกันให้เหมือนกัน (สูงสุดถึงขีด จำกัด อธิบายด้านล่าง) คิดว่าพวกเขาเป็นคนแรกที่ระบุเค้าโครงตารางที่มี2 หมายเลขแรกของพวกเขา(2x2, 1x8, 3x4 ฯลฯ ) เช่น:
f.add_subplot(3,4,1)
# is equivalent to:
f.add_subplot(341)
ทั้งสองสร้างการจัดเรียงย่อยของ (3 x 4 = 12) แผนการย่อยใน 3 แถวและ 4 คอลัมน์ ตัวเลขที่สามในการโทรแต่ละครั้งแสดงให้เห็นวัตถุที่แกนการกลับมาเริ่มต้นจาก1 ที่ด้านบนซ้ายเพิ่มขึ้นไปทางด้านขวา
รหัสนี้แสดงข้อ จำกัด ของการใช้การโทร 2:
#!/usr/bin/env python3
import matplotlib.pyplot as plt
def plot_and_text(axis, text):
'''Simple function to add a straight line
and text to an axis object'''
axis.plot([0,1],[0,1])
axis.text(0.02, 0.9, text)
f = plt.figure()
f2 = plt.figure()
_max = 12
for i in range(_max):
axis = f.add_subplot(3,4,i+1, fc=(0,0,0,i/(_max*2)), xticks=[], yticks=[])
plot_and_text(axis,chr(i+97) + ') ' + '3,4,' +str(i+1))
# If this check isn't in place, a
# ValueError: num must be 1 <= num <= 15, not 0 is raised
if i < 9:
axis = f2.add_subplot(341+i, fc=(0,0,0,i/(_max*2)), xticks=[], yticks=[])
plot_and_text(axis,chr(i+97) + ') ' + str(341+i))
f.tight_layout()
f2.tight_layout()
plt.show()
คุณสามารถดูได้ด้วยการโทร 1 บน LHSคุณสามารถส่งคืนวัตถุแกนใด ๆ ได้ แต่ด้วยการโทร 2 บน RHSคุณสามารถส่งกลับได้ถึงดัชนี = 9 การแสดงผลย่อยย่อย j), k) และ l) ไม่สามารถเข้าถึงได้โดยใช้การโทรนี้
คือมันแสดงให้เห็นถึงจุดนี้จากเอกสาร:
pos เป็นจำนวนเต็มสามหลักโดยตัวเลขตัวแรกคือจำนวนแถวที่สองคือจำนวนคอลัมน์และอันดับที่สามของดัชนีย่อย ie fig.add_subplot (235) เหมือนกับ fig.add_subplot (2, 3, 5) โปรดทราบว่าจำนวนเต็มทั้งหมดต้องน้อยกว่า 10 เพื่อให้แบบฟอร์มนี้ใช้งานได้
โทร 3
ในสถานการณ์ที่หายาก add_subplot อาจถูกเรียกด้วยอาร์กิวเมนต์เดียวอินสแตนซ์แกนย่อยของพล็อตที่สร้างขึ้นแล้วในรูปปัจจุบัน แต่ไม่อยู่ในรายการของแกน
โทร 4 (ตั้งแต่ 3.1.0):
หากไม่มีการส่งผ่านข้อโต้แย้งตำแหน่งให้ใช้ค่าเริ่มต้นเป็น (1, 1, 1)
เช่นการทำซ้ำการโทรfig.add_subplot(111)
ในคำถาม