There are some solutions on how to make nice panel figures, for example, or the SciDraw package. By nice, I mean reasonably presentable – without miles of space in between figures, and plots within the panel have consistent sizes and fonts, and the labels are inline from plot to plot. I’m not asking for much.

However, I wantinclude a panel figure which has a 3D plot in it. I’m finding it very difficult with the padding in `GraphicsGrid`

. For example,

```
plot1 = Plot3D[Sin[x/100 + y^2], {x, -300, 300}, {y, -2, 2},
ColorFunction -> "RedBlueTones", Boxed -> False ,
LabelStyle -> {FontSize -> 13, FontFamily -> "Helvetica", Black},
AxesLabel -> {"x axis label", "y axis label", "z value", " "},
PlotLabel -> "3D Map",
ViewPoint -> {1.9660038626106877, 2.036484683486844,
1.8540655182930692},
ViewVertical -> {-0.38056099743618316, -0.39420402835939466,
0.836526455801371}];
plot2 = DensityPlot[Sin[x/100 + y^2], {x, -300, 300}, {y, -2, 2},
PlotRange -> All, PlotPoints -> 200,
ColorFunction -> "RedBlueTones", PlotLabel -> "Density Plot",
FrameLabel -> {{"x axis label", " "}, {"y axis label", " "}},
LabelStyle -> {FontSize -> 13, FontFamily -> "Helvetica", Black}];
plot3 = Plot[{Sin[x/100 + 0]}, {x, -300, 300}, PlotRange -> All,
Frame -> True, FrameLabel -> {"y axis label", " z label"},
AspectRatio -> 1,
LabelStyle -> {FontSize -> 13, FontFamily -> "Helvetica", Black},
PlotLabel -> "x axis cut"];
plot4 = Plot[{Sin[0 + y]}, {y, -2, 2}, PlotRange -> All,
Frame -> True, FrameLabel -> {"x axis label", " z label"},
AspectRatio -> 1,
LabelStyle -> {FontSize -> 13, FontFamily -> "Helvetica", Black},
PlotLabel -> "y axis cut"];
GraphicsGrid[{{plot1, plot2}, {plot3, plot4}},
ImageSize -> {1000, 1000}]
```

You can see the output, each plot is a different size, with massive gaps between the figures. I’ve played about with padding on `GraphicsGrid`

, but that hasn’t been very helpful. The titles are at different heights. It doesn’t look great. Any suggestions on improvements?