Phần 10: Hàm Subplots() và Subplot2grid() – Matplotib Basic

Phần 10: Hàm Subplots() và Subplot2grid()                        – Matplotib Basic

1. Subplots() :

Matplotlib’spyplot API có 1 hàm tiện dụng được gọi là subplots () hoạt động như 1 trình bao bọc tiện ích và giúp tạo các bố cục chung của các subplot, gồm cả determine bao quanh, trong 1 lệnh gọi.
Plt.subplots(nrows, ncols)
Hai đối số nguyên cho hàm này chỉ định số hàng và cột của lưới subplot. Hàm trả về 1 determine và 1 bộ chứa các trục bằng nrows * ncols. Mỗi trục có thể truy cập được bằng index của nó. Tại đây tôi tạo 1 subplot gồm 2 hàng x 2 cột và hiển thị 4 ô khác nhau trong mỗi subplot.
import matplotlib.pyplot as plt
fig,a =  plt.subplots(2,2)
import numpy as np
x = np.arange(1,5)
a[0][0].plot(x,x*x)
a[0][0].set_title('sq.')
a[0][1].plot(x,np.sqrt(x))
a[0][1].set_title('sq. root')
a[1][0].plot(x,np.exp(x))
a[1][0].set_title('exp')
a[1][1].plot(x,np.log10(x))
a[1][1].set_title('log')
plt.present()
Kết quả như dưới đây :

2. Subplot2grid() ;

Hàm này mang đến sự cơ động hơn ở trong việc tạo 1 trục tại 1 vị trí chi tiết của lưới. Nó cũng cho phép trục được kéo dài qua nhiều hàng hay cột.
Plt.subplot2grid(form, location, rowspan, colspan)
Trong ví dụ sau, 1 lưới 3X3 của determine được lấp đầy do các trục có kích thước khác nhau trong các khoảng hàng và cột, mỗi ô hiển thị 1 biểu đồ khác nhau.
import matplotlib.pyplot as plt
a1 = plt.subplot2grid((3,3),(0,0),colspan = 2)
a2 = plt.subplot2grid((3,3),(0,2), rowspan = 3)
a3 = plt.subplot2grid((3,3),(1,0),rowspan = 2, colspan = 2)
import numpy as np
x = np.arange(1,10)
a2.plot(x, x*x)
a2.set_title('sq.')
a1.plot(x, np.exp(x))
a1.set_title('exp')
a3.plot(x, np.log(x))
a3.set_title('log')
plt.tight_layout()
plt.present()
Kết quả :

admin

Leave a Reply

Your email address will not be published. Required fields are marked *