Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimanakah Saya Boleh Berkongsi X Axes Subplot Matplotlib Selepas Penciptaannya?

Bagaimanakah Saya Boleh Berkongsi X Axes Subplot Matplotlib Selepas Penciptaannya?

DDD
DDDasal
2024-10-25 00:47:02327semak imbas

How Can I Share X Axes of Matplotlib Subplots After Their Creation?

Berkongsi X Paksi Subplot Selepas Penciptaan

Dalam matplotlib, subplot yang dicipta secara bebas mempunyai paksi x dan y yang berasingan. Untuk berkongsi paksi antara subplot, biasanya disyorkan untuk menentukan sifat kongsi semasa penciptaan subplot.

Walau bagaimanapun, artikel ini menangani senario khusus perkongsian x paksi selepas subplot telah dibuat. Ini mungkin timbul apabila menggunakan pustaka yang menjana subplot sedia ada.

Perkongsian Paksi Selepas Penciptaan

Untuk memautkan paksi x dua subplot selepas penciptaannya, gunakan kaedah sharex(ax):

<code class="python">ax2.sharex(ax1)</code>

di mana ax1 ialah subplot dengan paksi x yang diingini, dan ax2 ialah subplot yang anda ingin kongsikan paksi x.

Pengendalian Label Tanda X

Selepas berkongsi paksi x, anda perlu melumpuhkan label tanda x pada salah satu subplot untuk mengelakkan pertindihan.

<code class="python">ax1.set_xticklabels([])  # Disable x tick labels for ax1</code>

Pertimbangan Penskalaan Auto

Bergantung pada keperluan, anda mungkin mahu gunakan kaedah autoscale() pada subplot kedua (ax2) untuk melaraskan penskalaan paksi-ynya.

Contoh

Pertimbangkan kod berikut yang mencipta dua subplot dan kemudian berkongsi paksi xnya selepas penciptaan:

<code class="python">import numpy as np
import matplotlib.pyplot as plt

t = np.arange(1000) / 100
x = np.sin(2 * np.pi * 10 * t)
y = np.cos(2 * np.pi * 10 * t)

fig = plt.figure()
ax1 = plt.subplot(211)
ax1.plot(t, x)
ax2 = plt.subplot(212)
ax2.plot(t, y)

ax2.sharex(ax1)
ax1.set_xticklabels([])
# ax2.autoscale()  # Uncomment for autoscaling

plt.show()</code>

Kod ini menjana dua subplot, setiap satu dengan paksi y sendiri tetapi berkongsi paksi x yang sama. Label tanda x dinyahdayakan pada subplot pertama untuk mengelakkan pertindihan. Dan, jika perlu, autoscaling boleh digunakan pada subplot kedua untuk pelarasan paksi-y.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Berkongsi X Axes Subplot Matplotlib Selepas Penciptaannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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