by smooth variant has a separate smoothness parameter for each level of
cat. In one sense you can think of these smooths as creating entirely separate smooth functions (they're aren't quite, they share the same basis for example), hence you have
nlevels(cat) entries in the
fs smooths share a single smoothness parameter, and in that sense are a bit closer to the smooth equivalent of random slopes; all the smooths are being pulled towards 0 (null function), with the smooths for some levels of
cat pulled more towards 0 than others.
You should just treat the
fs smooth summary as some measure of overall importance of the set of smooth functions. If the
fs smooth is the only one in the model where
x is a covariate then you could say interpret this as a test of the amount of variation in the response that can be explained by smooth functions of
x, against a null of no effect. It's like an omnibus test in the sense that it is over the set of smooths.
Put another way, it is a bit like a test for a variance term of random slopes in a mixed effects model; this would be on a single variance parameter and you get a single test over the entire "effect" even though it represents $m$ slopes.
Typically, one would use
fs where there where
nlevels(cat) was large and you aren't particularly interested in the specific levels, just like you might work with random effects in a mixed effects model.
As there could feasibly be a separate line for the many levels of the factor but we think of this as a single "smooth" you get a single plot with each smooth superimposed to get some idea of the variation within and between individual functions. It would get very messy it if also showed confidence bands for each smooth.
by case, because you conditioned on the observed set of levels (sensu fixed effects in a mixed model) it makes sense to view these are being of individual interest, hence a separate plot per level of
Also note that this is just the default plot to get a quick look at the fitted functions.