2009-03-03 10 views
11

Czy ktoś wie, czy możliwe jest automatyczne zapisanie rysunku w pliku .eps w MATLAB?Zapisywanie figury do pliku automatycznie w MATLAB

Używam skryptu, który generuje dużą liczbę wykresów i byłoby miło, gdybym nie musiał ręcznie zapisywać każdego!

Zdrówko, Ed

+1

Być może powiązane [tutaj] (http://stackoverflow.com/questions/10478414/saving-a-plot-as-a-png-in-matlab). – hhh

Odpowiedz

10

print function robi:

postać druku lub zapisać się do konkretnego formatu pliku ...

print(filename,formattype) zapisuje bieżący rysunek do pliku przy użyciu odpowiedniego formatu pliku, takie jak print('BarPlot','-dpng'). Jeśli nazwa pliku nie zawiera rozszerzenia, drukowanie dołącza odpowiednią.

print(filename,formattype,formatoptions) określa dodatkowe opcje dostępne dla niektórych formatów.

print Drukuje bieżący rysunek do drukarki domyślnej ...

+0

Dzięki, oszczędza mi dużo wysiłku =] –

3

ta została udzielona odpowiedź this other question, używając komendy PRINT. Chociaż to pytanie dotyczyło tworzenia obrazów w formacie .tiff, należy zmodyfikować kod podany w tych odpowiedziach, aby napisać .eps.

+0

Nie ładuję obrazu ani nie, jest to zestaw automatycznie generowanych wykresów, więc nie jestem pewien, czy ta sama składnia ma zastosowanie. –

+0

Mimo że w tekście pytania pojawiają się tylko IMREAD i IMWRITE, niektóre odpowiedzi pokazują, jak użyć funkcji PRINT do wydrukowania wykreślonego obrazu. – gnovice

10

druku lub saveas rade.

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

Jeśli chcesz określić nazwę pliku wyjściowego, lepiej jest użyć saveas.

+1

w rzeczywistości można podać nazwę pliku po prostu z -print -epsc nazwa_pliku –

0

Załóżmy, jesteś generowania liczb n liczb w pętli, należy spróbować z wiersza poleceń:

saveas(gca,sprintf('Figure%02d.pdf',N)); produkuje N figury Figure1.pdf - FigureN.pdf saveas(gca,sprintf('Figure%02d.eps',N)); produkuje N figury Figure1.eps - FigureN.eps

w miejsce gca można również użyć gcf. Pierwsza linia poleceń jest lepszym rozwiązaniem.

Mam nadzieję, że to rozwiąże Twój problem.