Próbuję udostępnić dwie osie wykresów podrzędnych, ale muszę udostępnić oś x po utworzeniu figury. Na przykład tworzę tę figurę:
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)
plt.plot(t,x)
ax2 = plt.subplot(212)
plt.plot(t,y)
# some code to share both x axis
plt.show()
Zamiast komentarza wstawiłbym kod, aby udostępnić obie osie x. Nie znalazłem żadnej wskazówki, jak mogę to zrobić. Są pewne atrybuty
_shared_x_axes
i _shared_x_axes
kiedy sprawdzam oś rysunku ( fig.get_axes()
), ale nie wiem, jak je połączyć.
źródło
g = ax.get_shared_y_axes(); g.remove(a) for a in g.get_siblings(ax)]
. Dzięki za punkt wyjścia!ax2.autoscale()
.