Я знаю, что Multipanel
в LevelScheme , вероятно, может позволить вам делать то, что вы хотите - но у меня нет большого опыта с этим, и примеры в документах довольно скудны.Я уже вставил один из примеров в этот SO-ответ , так что посмотрите и посмотрите, что вы думаете!
Вот моя попытка с GraphicsGrid
.То, что Multipanel
позволяет вам делать, но GraphicsGrid
не позволяет вам использовать переменные размеры столбца / строки.Это означает, что я изо всех сил пытался нарисовать стрелки программно, и обратился к рисованию их вручную с помощью панели «Инструменты рисования» (: D)
With[{yslice1 = .5, yslice2 = -.8},
GraphicsGrid[
{{DensityPlot[Sin[15 x y], {x, -1, 1}, {y, -1, 1},
ColorFunction -> "PlumColors", AspectRatio -> 2,
Epilog -> {Dashed, White, Line[{{-1, yslice1}, {1, yslice1}}],
Line[{{-1, yslice2}, {1, yslice2}}]}],
Plot[Sin[15 x yslice1], {x, -1, 1}, Axes -> False, Frame -> True]},
{SpanFromAbove,
Plot[Sin[15 x yslice2], {x, -1, 1}, Axes -> False,
Frame -> True]}},
Spacings -> {Scaled[0.2], Scaled[0.0]}]]
![enter image description here](https://i.stack.imgur.com/8H9bW.png)
Edit:
Вот то же самое, используя LevelScheme
, обратите внимание, что кадры выстраиваются в линию.Должна быть возможность добавить стрелки - так как LevelScheme
имеет много новых директив стрелок - но я оставлю это как домашнее задание!
<< "LevelScheme`"
{yslice1 = .5, yslice2 = -.8};
Figure[{
SetOptions[Multipanel,
ShowTickLabels -> {True, False, False, True}, Background -> Wheat,
PanelLetterFontSize -> 10, Margin -> {{40, 40}, {40, 0}}],
Multipanel[{{0, 1}, {0, 1}}, {2, 2},
XPlotRanges -> {-1, 1}, YPlotRanges -> {-1, 1},
XFrameLabels -> textit["x"], YFrameLabels -> textit["y"],
TickFontSize -> 10, XFrameTicks -> LinTicks[-1, 1, .5, 4],
YFrameTicks -> LinTicks[-1, 1, .5, 4],
BufferL -> 1.5, BufferB -> 3, Order -> Vertical,
XPanelSizes -> {1, 1}, XGapSizes -> 0.25, YGapSizes -> 0.2],
FigurePanel[{1, 2}],
RawGraphics[
Plot[Sin[15 x yslice1], {x, -1, 1}, Axes -> False, Frame -> True]],
FigurePanel[{2, 2}],
RawGraphics[
Plot[Sin[15 x yslice2], {x, -1, 1}, Axes -> False, Frame -> True]],
FigurePanel[{2, 1}, PanelAdjustments -> {{0, 0}, {0, +1.2}}],
RawGraphics[
DensityPlot[Sin[15 x y], {x, -1, 1}, {y, -1, 1},
ColorFunction -> "PlumColors", AspectRatio -> 2],
Graphics[{Dashed, Thick, White,
Line[{{-1, yslice1}, {1, yslice1}}],
Line[{{-1, yslice2}, {1, yslice2}}]}]]},
PlotRange -> {{0, 1}, {0, 1}}, ImageSize -> 2*72*{5, 3}
]
![scheming](https://i.stack.imgur.com/nuGro.png)