2009-03-03 3 views
11

Кто-нибудь знает, можно ли автоматически записать значение в файл .eps в MATLAB?Запись фигуры в файл автоматически в MATLAB

Я запускаю скрипт, который создает большое количество графиков, и было бы неплохо, если бы мне не пришлось вручную сохранять их каждый!

Cheers, Ed

+1

Возможно, это связано [здесь] (http://stackoverflow.com/questions/10478414/saving-a-plot-as-a-png-in-matlab). – hhh

ответ

10

print function делает это:

печати рисунок или сохранить в определенный формат файла ...

print(filename,formattype) сохраняет текущий рисунок в файл, используя указанный формат файла, например print('BarPlot','-dpng'). Если имя файла не содержит расширение, затем печать добавляет соответствующий.

print(filename,formattype,formatoptions) указывает дополнительные параметры, доступные для некоторых форматов.

print печатает текущую цифру на принтер по умолчанию ...

+0

Спасибо, экономит много усилий =] –

3

Это был дан в this other question, используя команду PRINT. Хотя этот вопрос касался создания изображений .tiff, должно быть просто изменить код, указанный в этих ответах, для написания .eps.

+0

Я не загружаю изображение или нет, это набор автоматически генерируемых графиков, поэтому я не уверен, что применяется тот же синтаксис. –

+0

Хотя текст вопроса показывает только IMREAD и IMWRITE, некоторые ответы показывают, как использовать функцию PRINT для вывода построенного изображения. – gnovice

10

печати или SaveAs будет делать трюк.

saveas(fig_handle, 'filename','eps') 
print('-deps',fig_handle) 
print -deps 1 

Если вы хотите указать имя выходного файла, вам лучше использовать saveas.

+1

На самом деле вы можете указать имя файла просто отлично с -print -epsc filename –

0

Предположим, вы создаете N число цифр в цикле, то вы должны попробовать командную строку:

saveas(gca,sprintf('Figure%02d.pdf',N)); производит N фигуры Figure1.pdf - FigureN.pdf saveas(gca,sprintf('Figure%02d.eps',N)); производит N фигуры Figure1.eps - FigureN.eps

вместо gca можно использовать gcf также. Первая командная строка - лучшее решение.

Надеюсь, что это решит вашу проблему.

Смежные вопросы