Frage
Ich bin Plotten 5 x 3 Plots subplot Befehl, aber es gibt massive Ränder um jede subplot.
Wie steuere ich die Randgröße um sich herum?
figure;
for c=1:15
subplot(5,3,c);
imagesc(reshape(image(:,c), 360,480));
colormap gray;
axis image;
end
Lösung
Das Problem ist, dass Matlab die position
Eigenschaft jeder Achse zugewiesen, so dass es Raum um jede Parzelle ist. Sie können entweder die position
Eigenschaft einstellen, oder Sie können get Unterachse aus dem File Exchange und einrichten die Handlungsstränge, wie Sie möchten.
Andere Tipps
Werfen Sie einen Blick auf die Achsen LooseInset und OuterPosition Eigenschaften: http://undocumentedmatlab.com/blog/axes-looseinset-property/
Da MATLAB R2019b können Sie verwenden tiledlayout Funktion der steuern Abstand der Nebenhandlungen.
Hier ist ein Beispiel, das zeigt, wie Nebenhandlungen zu erhalten, ohne Fliesenabstand:
figure
example_image = imread('cameraman.tif');
t = tiledlayout(5,3);
nexttile
for c= 1:15
imagesc(example_image(:,c))
if c < 15
nexttile
end
end
t.TileSpacing = 'None';