Is it possible to move the first plot in show to the front without changing which plot we inherit the options from?
The problem is that if I want a certain plot to go in front I cannot use it to inherit the options from.
While writing I thought of the following solution. I can include the plot twice. Once as the first argument and again later. Is this the best solution?
Show[otherPlots.., Graphics[##], ##2]& @@ thePlot
? $\endgroup$Show[plot1, plot2,..., Options[plot2]]
, but in both my and @Kuba's suggestions, if there is an option in the first plot that is not explicitly overridden by the options, then the option from the first plot will be used. $\endgroup$Show
looks the way you want it to, I would say your solution of giving one of the plots as both first and last argument is a good solution even if it it not the best solution. I take an engineering view of things; if a solution works without any unwelcome side effects, use it and don't worry about what is best. $\endgroup$Show[plot1, plot2, plot2[[2]]]
. If you want to suppress the options from first plot entirely you can doShow[Graphics@First@plot1, plot2, plot2[[2]]]
. $\endgroup$