Plots -> PgfPlotsX: Group plot only "outer edge" x and y-labels?

You can either modify the axis labels of subplots

p = plot(
    rand(100, 4),
    layout = 4,
    label = ["a" "b" "c" "d"],
    title = ["1" "2" "3" "4"],
)
xlabel!(p[3], "hi")
xlabel!(p[4], "hi")
ylabel!(p[1], "bye")
ylabel!(p[3], "bye")

or specify them for each subplot in the plot command by passing row vectors.

p = plot(
    rand(100, 4),
    layout = 4,
    label = ["a" "b" "c" "d"],
    title = ["1" "2" "3" "4"],
    xlabel = ["" "" "hi" "hi"],
    ylabel = ["bye" "" "bye" ""],
)

Both result in this plot: