Adakah Penciptaan Bebas Objek AxesSubPlot Mungkin?
Seperti yang dicadangkan oleh dokumentasi matplotlib, mencipta kejadian AxesSubPlot dalam rajah biasanya dicapai melalui Rajah. add_subplot. Walau bagaimanapun, adalah wajar untuk mencipta objek ini secara bebas daripada angka, membenarkan penggunaan semulanya dalam berbilang angka.
Menggunakan Semula AxesSubPlots dalam Angka Berbeza
Walaupun tidak dapat untuk memisahkan sepenuhnya penciptaan paksi daripada angka, adalah mungkin untuk menggunakan semula paksi yang dibuat sebelum ini dalam angka baharu atau sedia ada. Ini boleh dicapai dengan fungsi mudah:
def plot_axes(ax, fig=None, geometry=(1, 1, 1)): if fig is None: fig = plt.figure() if ax.get_geometry() != geometry: ax.change_geometry(*geometry) ax = fig.axes.append(ax) return fig
Fungsi ini mengambil kapak contoh paksi sedia ada dan secara pilihan menambahnya pada rajah rajah baharu atau sedia ada, memastikan ia mempunyai geometri yang ditentukan (baris, lajur, nombor dalam kumpulan).
Contoh Penggunaan
Untuk menunjukkan kefungsian ini, pertimbangkan kod berikut:
import numpy as np import matplotlib.pyplot as plt x = np.linspace(0, 6 * np.pi, 100) # Create axes subplots independently ax1 = plt.axes() ax2 = plt.axes() # Add ax1 to figure 1 fig1 = plt.figure() plt.axes.append(ax1) # Add ax2 to figure 2 fig2 = plt.figure() plt.axes.append(ax2) # Plot data on ax1 ax1.plot(x, np.sin(x)) ax1.set_ylabel("Sin(x)") # Plot data on ax2 ax2.plot(x, np.cos(x)) ax2.set_ylabel("Cos(x)") plt.show()
Dalam contoh ini, dua paksi subplot dicipta secara bebas, kemudian ditambah kepada dua angka berasingan. Setiap subplot mengandungi data dan labelnya sendiri.
Atas ialah kandungan terperinci Bolehkah Objek AxesSubPlot Dicipta Secara Bebas daripada Angka dalam Matplotlib?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!