Bolehkah Anda Mencipta Objek AxesSubplot Secara Bebas daripada Angka dalam Matplotlib?

Patricia Arquette
Lepaskan: 2024-11-13 00:46:02
asal
692 orang telah melayarinya

Can You Create AxesSubplot Objects Independently of Figures in Matplotlib?

Menyahgandingkan Penciptaan AxesSubplot dan Penambahan Rajah

Masalah:
Memperibadikan plot matplotlib AxSubes sering memerlukan penciptaan plot Axplotlib objek. Walau bagaimanapun, objek ini biasanya terikat pada Rajah pada penciptaan mereka. Ini mengehadkan keupayaan untuk menggunakan semula AxesSubplots merentas berbilang angka.

Soalan:
Adakah mungkin untuk mencipta objek AxesSubplot secara bebas daripada kejadian Rajah dan kemudian menambahkannya pada angka yang berbeza sebagai diperlukan?

Jawapan:

Ya, adalah mungkin untuk mengasingkan penciptaan AxesSubplot dan penambahan Rajah dalam matplotlib. Terdapat dua pendekatan utama:

Melalui Fungsi dengan Kejadian Axes:

  • Buat fungsi yang mengambil contoh Axes sebagai hujah.
  • Laksanakan kod plot dalam fungsi ini.
  • Lepasi kod sedia ada atau yang baru dibuat Contoh Axes kepada fungsi.
  • Ini membenarkan penggunaan semula subplot yang sama dalam berbilang angka dengan menghantar contoh Axes yang sama kepada panggilan fungsi yang berbeza.

Melampirkan Axes pada Rajah :

  • Buat tika Axes secara bebas daripada Rajah.
  • Tambah tika Axes pada Rajah menggunakan kaedah Figure.axes.append().
  • Nyatakan geometri yang diingini dalam kaedah append().
  • Ini pendekatan membenarkan penggunaan semula tika Axes merentas berbilang angka, tanpa mengira saiz atau bilangan angka subplot.

Kod Contoh:

Fungsi Lulus dengan Kejadian Axes:

import numpy as np
import matplotlib.pyplot as plt

def plot_sin(ax):
    x = np.linspace(0, 6 * np.pi, 100)
    ax.plot(x, np.sin(x))
    ax.set_ylabel('Yabba dabba do!')

fig1, (ax1, ax2) = plt.subplots(nrows=2)
plot_sin(ax1)
plot_sin(ax2)

fig2 = plt.figure()
ax3 = fig2.add_subplot(111)
plot_sin(ax3)

plt.show()
Salin selepas log masuk

Menambahkan Kapak pada Angka:

import numpy as np
import matplotlib.pyplot as plt

fig1 = plt.figure()
ax1 = fig1.add_subplot(111)

fig2 = plt.figure()
ax2 = fig2.add_subplot(111)
fig2.axes.append(ax1)

plt.show()
Salin selepas log masuk

Atas ialah kandungan terperinci Bolehkah Anda Mencipta Objek AxesSubplot Secara Bebas daripada Angka 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