import numpy as np
import ultraplot as uplt

x = np.arange(10)
y = np.random.default_rng(1).normal(size=(4, 10))
fig, axs = uplt.subplots(
   nrows=2,
   ncols=2,
)
for ix in range(2):
   for jx in range(2):
      axs[ix, jx].plot(x, y[ix, :] * (ix + 1) + jx + 0.25 * x)

axs.format(
   xlabel="x",
   ylabel="y",
   title="Automatic spacing across subplot groups",
   abc="A.",
   abcloc="ul",
)