2011-06-01 12 views
11

Jestem używana do wykreślania danych za pomocą gnuplot, więc mogę łatwo umieścić dane w dokumencie LaTeX, używając terminala epslatex. Na przykład:Funkcja epslatex gnuplot w matplotlib

file = "data.dat" 

set terminal epslatex 
set output "figure1.tex" 

plot file 

ten sposób generowane są dwa pliki: jeden .eps plik, który zawiera grafikę i jeden .tex plik, który zawiera tekst. Wielką zaletą tego jest fakt, że tekst jest renderowany przez LaTeX, więc tiki, etykiety itp. Mają taką samą czcionkę jak reszta dokumentu.

Teraz zaczynam od matplotlib, który ma znacznie przyjemniejsze API, jest bardziej skryptowalny i, no cóż, jest Python. Ale nawet jeśli mogę zrobić matplotlib, to tekst z LaTeX, zostanie osadzony w obrazie i nie mogę osiągnąć tych samych korzyści, które miałem z gnuplotem.

Czy istnieje sposób, w jaki mogę emulować terminal epslatex w matplotlib?

+0

Cóż, zamieściłem to pytanie na listach dyskusyjnych Matplotlib [tutaj] (http://sourceforge.net/mailarchive/message.php?msg_id=27586627), więc czekam też na odpowiedź. – astrojuanlu

+1

Doszedłem do wniosku, że dobry tekst renderowany LaTeXa w liczbach LaTeXa można osiągnąć tylko za pomocą TikZ/PGFplots - które mają wiele innych wad w tworzeniu figur. Psfrag ma problem z tym, że podczas gdy LaTeX renderuje tekst, rozmiar zastępowanego tekstu nie jest znany programowi generującemu figurę, więc tekst jest często niewłaściwie pozycjonowany. –

Odpowiedz