Вы можете использовать LevelScheme для достижения того, что вы хотите. Вот пример:
<< "LevelScheme`"
Figure[{
Multipanel[{{0, 1}, {0, 1}}, {1, 3},
XFrameLabels -> textit["x"], BufferB -> 3,
YFrameLabels -> textit["Sinc(x)"], BufferL -> 3,
TickFontSize -> 9,
XGapSizes -> {0.1, 0.1},
PanelLetterCorner -> {1, 1}
],
FigurePanel[{1, 1}, PlotRange -> {{-1.6, -0.6}, {-0.5, 1}}],
RawGraphics[Plot[Sinc[20 x], {x, -1.6, -0.6}]],
FigurePanel[{1, 2}, PlotRange -> {{-0.5, 0.5}, {-0.5, 1}}],
RawGraphics[Plot[Sinc[20 x], {x, -0.5, 0.5}]],
FigurePanel[{1, 3}, PlotRange -> {{0.6, 1.6}, {-0.5, 1}}],
RawGraphics[Plot[Sinc[20 x], {x, 0.6, 1.6}]]
},
PlotRange -> {{-0.1, 1.02}, {-0.12, 1.095}}]
![enter image description here](https://i.stack.imgur.com/wzt9U.png)
LevelScheme предлагает вам невероятную гибкость в оформлении вашего сюжета.
- Вместо именования, дающего общие метки графика, вы можете переместить определение в
FigurePanel[]
и управлять ярлыками для каждого из них в отдельности.
- Вы можете установить интервалы между участками как в направлениях X, так и в Y, а также изменить размеры каждой панели, например, левая может занимать 2/3 пространства, а следующие две - только 1/6 пространство каждый.
- Вы можете установить отдельные диапазоны графика, изменить метки для каждого кадра, указать, на какой стороне панели (вверху / внизу / l / r) метки должны быть отмечены, изменить нумерацию панелей и т. Д.
Единственным недостатком является то, что вам, возможно, придется бороться с ним в , в некоторых случаях , но в целом я нашел удовольствие использовать.
EDIT
Вот пример, похожий на ваш пример:
Figure[{
Multipanel[{{0, 1}, {0, 1}}, {1, 3},
YFrameLabels -> textit["Vertical"], BufferL -> 3,
TickFontSize -> 9,
XGapSizes -> {0.1, 0.1},
PanelLetterCorner -> {1, 1}
],
FigurePanel[{1, 1}, PlotRange -> {{1, 10}, {0, 10}}],
RawGraphics[ListLinePlot[RandomInteger[10, 10]]],
FigurePanel[{1, 2}, PlotRange -> {{1, 10}, {0, 10}},
LabB -> textit["Horizontal"], BufferB -> 3],
RawGraphics[ListLinePlot[RandomInteger[10, 10]]],
FigurePanel[{1, 3}, PlotRange -> {{1, 10}, {0, 10}}],
RawGraphics[ListLinePlot[RandomInteger[10, 10]]]
},
PlotRange -> {{-0.1, 1.02}, {-0.2, 1.095}}]
![enter image description here](https://i.stack.imgur.com/0GSAX.png)
РЕДАКТИРОВАТЬ 2
Чтобы ответить на комментарий г-на Волшебника, вот пустой шаблон для 2x3
сетки
Figure[{Multipanel[{{0, 1}, {0, 1}}, {2, 3},
XFrameTicks -> None,
YFrameTicks -> None,
XGapSizes -> {0.1, 0.1},
YGapSizes -> {0.1}],
FigurePanel[{1, 1}],
FigurePanel[{1, 2}],
FigurePanel[{1, 3}],
FigurePanel[{2, 1}],
FigurePanel[{2, 2}],
FigurePanel[{2, 3}]
}, PlotRange -> {{-0.01, 1.01}, {-0.01, 1.01}}]
![enter image description here](https://i.stack.imgur.com/T74GZ.png)
А вот с расширенными панелями
Figure[{Multipanel[{{0, 1}, {0, 1}}, {2, 3},
XFrameTicks -> None,
YFrameTicks -> None,
XGapSizes -> {0.1, 0.1},
YGapSizes -> {0.1}],
FigurePanel[{1, 1}, PanelAdjustments -> {{0, 0}, {1.1, 0}}],
FigurePanel[{1, 2}],
FigurePanel[{1, 3}],
FigurePanel[{2, 2}, PanelAdjustments -> {{0, 1.1}, {0, 0}}]
}, PlotRange -> {{-0.01, 1.01}, {-0.01, 1.01}}]
![enter image description here](https://i.stack.imgur.com/18jnn.png)