91

私がやりたいのは、幅を大きくし、高さを小さくすることだけです。ラスタープロットを実行しているだけですが、この質問はすべてのMATLABに当てはまりますfigure。作成時にフィギュアを直接使用して手動でサイズを変更できますが、最初はプログラムに適切なサイズで吐き出してもらいたいです。

4

5 に答える 5

81

aに設定できるプロパティは、ここfigureで参照されます。

次に、次を使用できます。

figure_number = 1;
x      = 0;   % Screen position
y      = 0;   % Screen position
width  = 600; % Width of figure
height = 400; % Height of figure (by default in pixels)

figure(figure_number, 'Position', [x y width height]);
于 2011-03-03T15:52:08.177 に答える
66

ワンライナーとして書いてください:

figure('position', [0, 0, 200, 500])  % create new figure with specified size  

ここに画像の説明を入力してください

于 2014-08-18T13:15:08.587 に答える
31
 figure (1)
 hFig = figure(1);
 set(gcf,'PaperPositionMode','auto')
 set(hFig, 'Position', [0 0 xwidth ywidth])
 plot(x,y)
 print -depsc2 correlation.eps;       % for saving in eps, look up options for saving as png or other formats you may need

これにより、指定した寸法で図が保存されます

于 2012-12-28T11:06:54.340 に答える
1

次のシーケンスで良好な結果を得ることができました(最初にMatlabを2回実行します)。

h = gcf; % Current figure handle
set(h,'Resize','off');
set(h,'PaperPositionMode','manual');
set(h,'PaperPosition',[0 0 9 6]);
set(h,'PaperUnits','centimeters');
set(h,'PaperSize',[9 6]); % IEEE columnwidth = 9cm
set(h,'Position',[0 0 9 6]);
% xpos, ypos must be set
txlabel = text(xpos,ypos,'$$[\mathrm{min}]$$','Interpreter','latex','FontSize',9);

% Dump colored encapsulated PostScript
print('-depsc2','-loose', 'signals');
于 2016-02-17T13:06:35.033 に答える
0

別のアプローチ。
呼び出しでプロパティを指定するか、figure()の後にFigureハンドルのプロパティを変更しますh = figure()

これにより、正規化された単位に基づいてフルスクリーンの図が作成されます。
figure('units','normalized','outerposition',[0 0 1 1])

プロパティは、unitsインチ、センチメートル、ピクセルなどに調整できます。

figure ドキュメントを参照してください。

于 2018-10-31T16:29:25.343 に答える