MATLAB - печать графика с разными именами вывода - PullRequest
3 голосов
/ 21 февраля 2010

У меня есть программа MATLAB, которая графически отображает некоторые вещи, а затем выводит график в файл. Если я запускаю эту программу несколько раз в одном и том же каталоге, файл каждый раз перезаписывается. Как я могу сделать так, чтобы имя файла выводилось на изменения ...

У меня сейчас есть это:

print -depsc myfigure

У меня есть строки, рейтинг и имя, которые я хочу использовать, но не могу заставить их работать. Если я не могу использовать свои строки, то что-то случайное тоже подойдет. Есть ли способ сделать это?

Большое спасибо!

Ответы [ 4 ]

4 голосов
/ 21 февраля 2010

Назовите его с текущей датой и временем:

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

запустить прямо сейчас в PST, это создаст файл с именем prefix_20100220T200733.eps. Очевидно, вы можете изменить префикс и / или формат даты.

2 голосов
/ 22 февраля 2010

Этот код проверяет, существует ли файл, и если да, добавляет счетчик к его имени.

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);
2 голосов
/ 21 февраля 2010

Вы можете добавить текущее время к вашему имени файла. Например:

m=magic(10);
fh=figure, surf(m);
currenttime= datestr(now,'MMSSFFF');
print(['-f',num2str(fh)],'-depsc',['outputFileName_',currenttime,'.eps']);
0 голосов
/ 29 марта 2014

Это просто. работал на меня.

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

Или любой другой формат файла, который вы хотите экспортировать. проверьте справку по печати. ​​

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...