2010-02-21 87 views
3

我有一個MATLAB程序,可以繪製一些圖形,然後將圖形輸出到文件。如果我在同一個目錄下多次運行此程序,則每次都會覆蓋該文件。我怎樣才能使它因此它輸出到修改文件名...MATLAB - 具有不同輸出名稱的打印圖形

目前,我有這樣的:

print -depsc myfigure 

我有一個字符串,速率和名字,我想用,但不能得到任何工作。如果我不能使用我的琴絃,隨機的東西也不錯。任何方式來做到這一點?

非常感謝!

+0

O wait!試想一下。我可以運行MATLAB程序並在我的腳本中再次運行程序之前重命名該文件。 仍然好奇,如果這是可能的,但... ... – Mark 2010-02-21 04:00:16

回答

4

與當前日期和時間將它命名爲:

print('-depsc2', ['prefix_' datestr(now, 30)]) 

運行在PST現在,這將創建一個名爲prefix_20100220T200733.eps文件。您顯然可以更改前綴和/或日期格式。

2

您可以將當前時間添加到您的文件名。例如:

m=magic(10); 
fh=figure, surf(m); 
currenttime= datestr(now,'MMSSFFF'); 
print(['-f',num2str(fh)],'-depsc',['outputFileName_',currenttime,'.eps']); 
2

此代碼檢查文件是否存在,如果是,則向其名稱添加計數器。

filename = 'myfigure'; 
if exist([filename '.eps'],'file') 
    k=1; 
    while exist([filename '_' num2str(k) '.eps'], 'file') 
     k=k+1; 
    end 
    filename = [filename '_' num2str(k)]); 
end 
print('-depsc', filename); 
0

它很簡單。爲我工作。

currenttime= datestr(now,'dd-mm-yy_HH:MM') 
filename= ['graph' currenttime '.jpg'] 
print('-dpdf',filename) 

或者您想要導出的任何其他文件格式。檢查打印幫助。

+0

這比4年前接受的答案更好嗎? – nguthrie 2014-03-29 01:50:31

+0

我做到了。找到這篇文章。所以,分享我的選擇,沒有比較優勢的目的。 – curiousMonkey 2014-03-30 03:03:09

相關問題