saveas を使用します。
h=figure;
plot(x,y,'-bs','Linewidth',1.4,'Markersize',10);
% ...
saveas(h,name,'fig')
saveas(h,name,'jpg')
これにより、図がプロットされ、「。jpg」と「.fig」に自動的に保存されます。プロットが表示されるのを待って、メニューの「名前を付けて保存」をクリックする必要はありません。多くの図をプロット/保存する必要がある場合の方法。
プロットを実際に表示したくない場合(とにかくロードする必要があり、それを避けることができず、そうでなければ保存するものもありません)、それを非表示にすることができます:
h=figure('visible','off')
Saveas関数を使用する場合、解像度はFile-> Save As ...を使用して手動でFigureを保存する場合ほど良くありません。代わりに、 hgexport を使用することをお勧めします。
hgexport(gcf, 'figure1.jpg', hgexport('factorystyle'), 'Format', 'jpeg');
これは、図を手動で保存するのとまったく同じです。
ソース: http://www.mathworks.com/support/solutions/en/data/1-1PT49C/index.html?product=SL&solution=1-1PT49C
表示せずに保存できるとは思いませんが、複数の形式で保存するには、printコマンドを使用します。ここに投稿された回答を参照してください: Matlabにimagesc出力を保存する
.figファイルとして保存する場合、hgsaveはMatlab R2012aの関数です。それ以降のバージョンでは、savefigも機能する可能性があります。
最近(2017年5月)、MATLABは、特にGNU/Linuxシステムで数値をバッチモードでエクスポートする場合、数値をエクスポートするための堅牢な方法に苦しんでいます。最適なオプションは、拡張子 export_fig を使用することです
Githubからソースコードをダウンロードして使用するだけです。
plot(cos(linspace(0, 7, 1000)));
set(gcf, 'Position', [100 100 150 150]);
export_fig test2.png
imwrite(A,filename)
は、画像データAをfilenameで指定されたファイルに書き込み、拡張子からファイル形式を推測します