Options (65)
AspectRatio (8)
With the default setting AspectRatio→Automatic, the aspect ratio of the resulting grid is based on a combination of the ItemSize setting and the AspectRatio settings of the individual plots:
Changing the AspectRatio of the plots changes the resulting aspect ratio:
Changing the ItemSize setting affects the aspect ratio:
Base the aspect ratio only on the aspect ratios of the individual plots:
Target a specific aspect ratio:
Make it so the bottom left plot effectively has AspectRatio→Automatic, so that the circle is really a circle:
Trying to make all plots have AspectRatio→Automatic is not always possible:
Equalizing the PlotRange settings will usually resolve the problem:
Another possibility is to only apply the aspect ratio target to as many plots as possible:
Only rows/columns with ItemSize set to Automatic will be resized to hit the aspect ratio targets:
Use a Frame[…] type wrapper to specify the target aspect ratio for the plot with the circle, and specify a target for the overall aspect ratio:
Use a mixture of different target aspect ratios and specify the overall aspect ratio of the grid:
FrameLabel (2)
Labels specified by FrameLabel are centered with respect to the full plot grid:
Label both individual frame axes and the whole group:
FrameStyle (2)
The setting for FrameStyle affects the frame labels shared by all plots:
With the default setting FrameStyle→Automatic, the style is inherited from the first plot:
ItemSize (5)
With the default setting ItemSize→Automatic, all rows and columns have the same size:
Make the middle row twice as high:
Size the rows and columns according to the plot ranges:
Size the rows and columns according to the plot ranges, but make the third column half as wide:
Make the first row and column 100 printers points big:
The remaining space is dynamically filled by the remaining rows and columns:
Spacings (5)
With the default setting Spacings→None, no space is left between rows and columns:
Separate plots by 30 printers points:
Separate plots by 10% of the total plot grid width:
Only insert space between rows:
With "ShowFrameLabels"→Full, frame labels and ticks are shown if there is a gap:
PlotRange (5)
With the default setting PlotRange→Inherited, the plot ranges of the plots are left unmodified:
Ensure that the plot ranges of the plots are consistent while showing all data:
Use a reduced plot range to ensure all plots are filled out:
Show everything in the vertical range, but crop the horizontal range to the common part of the ranges:
Use explicit settings for the plot ranges, using Directive instead of {…} to prevent ambiguity:
PlotLabels (8)
With the default setting PlotLabels→None, the plots are not labeled:
Label the plots columns first using a), b), …:
Apply styling to the labels and use sequential numbers:
Place the labels outside the plots and number rows first:
The base style of the labels is affected by LabelStyle:
Add an additional custom label to one of the plots using a Labeled wrapper:
If the same position is specified for multiple labels, overlap is automatically avoided:
Number plots automatically, but add an additional description to each plot:
LabelingFunction (4)
With the default setting LabelingFunction→Automatic, labels with the same position are put into a row/column, depending on the position of the labels:
Stack all labels vertically:
Put frames around the labels:
Put frames around the labels, but preserve the automatic layout:
Prolog & Epilog (2)
Positions inside Prolog and Epilog can be of the form {i,j}→pos to specify positions relative to the plot with index {i,j}:
Positions can also be of type Scaled[…], ImageScaled[…], and Offset[…]:
ShowFrameLabels (6)
With the default setting "ShowFrameLabels"→Full, frame ticks and labels are shown if there is no adjacent plot or a spacing:
Labels are shown if a plot is omitted:
Hide all labels unless there is no adjacent plot at all:
Show no frame labels:
Show all frame labels:
Hide frame labels of the center plot using a Frame[plot,…]-type wrapper:
HideOuterTickLabels (6)
With the default setting "HideOuterTickLabels"→Full, the rightmost tick label on each plot to the left of another plot is hidden if there is insufficient Spacings. Similarly, the topmost tick label on each plot below another plot is hidden:
Hide the labels on both plots, not only the left/bottom one:
Also hide outer labels if there is spacing between the plots:
Hide labels in the outer 50% of the plot range instead of the default 10 printers points. The hiding is done in the default locations, meaning only on the top rows and left columns and never on the outermost edges:
Do not hide any tick labels, potentially causing overlaps:
Hide the outer ticks on the lower right plot only by specifying the setting using a Frame[plot,…]-type wrapper:
MergeAxes (7)
With the default setting "MergeAxes"→False, the axes of the plots are not merged:
Merge the axes of the left two plots using a zig-zag line:
Use a cut-type indicator instead, and make the gap larger:
The frame styles of both plots are inherited:
Specify which axes to merge using a Frame[plot,…]-type wrapper instead:
Use a custom merge indicator:
Use a different merge indicator on each side of the gap:
PerformanceGoal (1)
Setting PerformanceGoal to "Speed" can drastically improve the performance when resizing the plot grid due to an issue in the front end related to custom ticks:
Method (4)
With the default setting "FixFrameTicks"→True, the tick length is corrected to appear as expected:
Turning the fix off might yield unexpected results:
With the default setting "AllCustomTicks"→Automatic, ticks are ensured to be uniform, even if this means differences to the default tick positioning:
Use "AllCustomTicks"→False to use custom ticks only where necessary, e.g. to hide tick labels selectively:
Possible Issues (8)
PlotGrid assumes that plots have compatible plot ranges:
Use the option PlotRange to enforce consistent plot ranges:
Tick labels are hidden based on the size the grid is generated with; therefore, changing it later might lead to unexpected results:
Specify the size directly instead:
The ticks might sometimes be changed by PlotGrid:
To recover the original ticks, disable both "HideOuterTickLabels" and "AllCustomTicks":
Invalid specifications for spanning plots lead to leftover span indicators:
Some label specifications are potentially ambiguous and might be interpreted in an unexpected way:
Add an empty two-level label specification to ensure the specification is interpreted as a list of several top-level label lists:
Some settings for AspectRatio will lead to unresolvable constraints on the sizes of the rows and columns:
Remove some of the AspectRatio targets:
Targeting AspectRatio settings for individual plots is not supported when Offset type specifications are used:
Use Scaled[…] type Spacings instead:
Merge indicators are shown in the gap between two plots. Consequently, the indicators cannot be shown if Spacings is effectively set to 0:
Set Spacings to something non-zero to avoid this issue: