Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Menggunakan Semula Objek AxesSubplot Merentasi Angka Berbeza dalam Matplotlib?

Bagaimana untuk Menggunakan Semula Objek AxesSubplot Merentasi Angka Berbeza dalam Matplotlib?

Susan Sarandon
Lepaskan: 2024-11-28 16:18:11
asal
560 orang telah melayarinya

How to Reuse AxesSubplot Objects Across Different Figures in Matplotlib?

Berkongsi Objek AxesSubplot Merentas Rajah

Dalam matplotlib, adalah perkara biasa untuk mencipta objek AxesSubplot menggunakan kaedah Figure.add_subplot(). Walau bagaimanapun, anda mungkin mahu mengasingkan penciptaan subplot paksi daripada kejadian rajah untuk menggunakannya semula dalam rajah yang berbeza.

Mencipta Objek AxesSubplot Secara Bebas

Untuk mencapai ini, anda boleh gunakan pendekatan alternatif:

import matplotlib.pyplot as plt

axes = plt.AxesSubplot(fig, 1, 1, 1)  # Create an empty axes subplot
axes.set_xlabel("X-Label")  # Populate axes settings
axes.set_ylabel("Y-Label")
Salin selepas log masuk

Ini membolehkan anda membuat AxesSubplot objek tanpa mengaitkannya dengan angka tertentu.

Menambahkan AxesSubplot Objects to Figures

Setelah anda mencipta paksi subplot secara bebas, anda boleh menambahkannya pada angka menggunakan yang berikut kaedah:

# Add axes to figure 1
fig1 = plt.figure()
fig1.axes.append(axes)

# Add axes to figure 2
fig2 = plt.figure()
fig2.axes.append(axes)
Salin selepas log masuk

Menggunakan semula Subplot Axes

Dengan menambahkan subplot paksi pada berbilang angka, anda boleh menggunakannya semula dengan mudah. Sebagai contoh, anda boleh mentakrifkan fungsi untuk memplot data pada subplot paksi yang ditentukan:

def plot_on_axes(axes, data):
    axes.plot(data)
Salin selepas log masuk

Fungsi ini kemudiannya boleh digunakan dalam pelbagai rajah untuk memplot data yang sama pada subplot paksi kongsi.

Mengubah Saiz Kapak

Menggerakkan objek AxesSubplot daripada satu rajah kepada yang lain mungkin memerlukan saiz semula untuk dipadankan dengan reka letak angka baharu. Untuk mengubah saiz paksi, anda boleh menggunakan kaedah set_geometry():

axes.set_geometry(1, 2, 1)  # Update axes geometry for figure 1, with two columns
Salin selepas log masuk

Contoh

Coretan kod berikut menunjukkan cara mencipta dan menggunakan semula subplot paksi secara bebas:

import matplotlib.pyplot as plt

# Create independent axes subplots
ax1 = plt.AxesSubplot(None, 1, 1, 1)
ax2 = plt.AxesSubplot(None, 1, 1, 1)

# Populate axes settings
ax1.set_xlabel("X1")
ax1.set_ylabel("Y1")
ax2.set_xlabel("X2")
ax2.set_ylabel("Y2")

# Add axes subplots to figure 1
fig1 = plt.figure()
fig1.axes.append(ax1)
fig1.axes.append(ax2)

# Add axes subplots to figure 2
fig2 = plt.figure()
fig2.axes.append(ax1)

plt.show()
Salin selepas log masuk

Contoh ini mencipta dua subplot paksi, menambah mereka kepada dua angka yang berbeza, dan memaparkannya.

Atas ialah kandungan terperinci Bagaimana untuk Menggunakan Semula Objek AxesSubplot Merentasi Angka Berbeza dalam Matplotlib?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan