I have a vague memory of this question being asked before but I cannot find it now.
Show
has no formal options; that is Options[Show]
is {}
. (As MB1965 just posted I see.) I think this makes sense as Show
does not really have any options of its own; it instead appends the options it is given to the compound Graphics
or Graphics3D
that it creates. It does not make sense for it to append a large list of default parameters to everything it creates; that would defeat the purpose of the construct IMHO.
Even if we Unprotect
Show
and give it Options
it doesn't know what to do with these; they are not applied. However because of this if we wish we can modify the function to make it append our options.
Unprotect[Show];
Show[x___] :=
Block[{$innerShow = True},
Show[x, Options @ Show]
] /; ! TrueQ[$innerShow]
Options[Show] = {ImageSize -> 222};
This is a settable option now; i.e. you can use SetOptions[Show, ImageSize -> 900]
etc.
Now:
p1 = Plot[Sin[x], {x, 0, 2 Pi}];
Show[p1, Background -> LightBlue]
Rasterize[%, "RasterSize"]

{222, 125}
Jason B.'s recommendation of a user show
replacement is of course "safer" but what's the fun in that? :^) You can give it settable Options if you wish:
Options[show] = {ImageSize -> 222};
show[x__] := Show[x, Options @ show]
show[x__] := Show[x, ImageSize -> 400]
$\endgroup$