2017-12-28 6 views
-1

In Python kann ich Größe figure Richtlinie passieren:Wie setze ich die Bildgröße in Matlab, ohne die Position zu verändern?

figure(figsize=(8,6)) 

In Matlab ich diese Fähigkeit nicht sehen. Ich habe komplexe Empfehlungen wie

set(gcf, 'PaperPositionMode', 'manual'); 
set(gcf, 'PaperUnits', 'inches'); 
set(gcf, 'PaperPosition', [2 1 4 2]); 

, die sowohl Einstellung Größe und Position umfasst.

Wie einfach Größe in Matlab auf einfachste Weise festlegen?

+0

Mehrere Fragen: 1) Welche MATLAB-Version verwendest du? 2) Was erhoffst du dir genau, um die Zahl "Position" nicht zu verändern? Versuchen Sie, die Figur in höherer Auflösung zu exportieren? Bitte erläutern Sie auch Ihre Motivation. –

+0

Der von Ihnen eingegebene Code ändert die Größe und Position der Figur, wirkt sich jedoch nur aus, wenn Sie die Figur drucken oder speichern. Möchten Sie es oder (und) möchten Sie die Größe des "Fensters" ändern, wie es auf dem Bildschirm angezeigt wird? –

Antwort

4

Dies sollte funktionieren:

set(gcf, 'Position', get(gcf,'Position').*[1 1 0 0] + [0 0 newWidth newHeight]); 

Wenn Ihr MATLAB R2014b oder höher ist, können Sie auch tun:

hF = gcf; 
hF.Position(3:4) = [newWidth newHeight]; 
1

Soweit ich weiß, gibt es keine Möglichkeit, nur die Größe einstellen Sie können jedoch die Standardposition/-größe abrufen und sie als Workaround verwenden. Schreiben Sie dazu etwas wie:

figPos = get(0,'defaultfigureposition'); 
width = 400; 
height = 400; 
figure('Position', [figPos(1), figPos(2), width, height]); 

Dadurch wird die Größe nur beim Initialisieren der Figur festgelegt. Für Zahlen bereits initialisiert, verwenden Sie das Griffelement gcf der Figur:

set(gcf, 'Position', [values]) 

Wenn Sie diese Größe als Standard festlegen möchten, verwenden Sie set auf die Eigenschaft 'defaultfigureposition':

set(0, 'defaultfigureposition', [values]); 
Verwandte Themen