Я строю 4 участка в одном ряду с общей осью Y. Однако по какой-то причине последний подплот не выровнен. Вот картинка:
Кажется, не проблема с кодом:
import numpy as np
import matplotlib.pyplot as plt
from functools import partial
t = np.linspace(-10, 10, 10000)
u = lambda x: np.heaviside(x, 0.5)
r = lambda x: np.piecewise(x, [x < 0, x >= 0], [0, lambda z: z])
########################################################################################################################
y = [2*u(t) - 2*u(t-1),
u(t) - u(t-1),
2*r(t)*(u(t+10) - u(t-1)),
2*r(t+1)*(u(t+10) - u(t))]
legend = [r'$f_1(t)$',
r'$f_2(t)$',
r'$f_3(t)$',
r'$f_4(t)$']
fig, ax = plt.subplots(nrows=1, ncols=4, sharey='all',
subplot_kw={'xlim': (-1.5, 2.5),
'ylim': (-0.5, 2.5),
'xticks': np.arange(-1, 3),
'yticks': np.arange(-1, 3),
'xlabel': r'$t$'})
for axi, yi, legendi in zip(ax, y, legend):
axi.plot(t, yi, label=legendi)
axi.legend()
axi.grid(True)
Любые идеи по как решить это?