2013-03-22 11 views
9

Sto usando un programma python per produrre alcuni dati, tracciare i dati usando matplotlib.pyplot e quindi visualizzare la figura in un file in lattice.Come si migliora la qualità dell'immagine di matplotlib?

Attualmente sto salvando la figura come un file .png ma la qualità dell'immagine non è eccezionale. Ho provato a cambiare il DPI in matplotlib.pyplot.figure(dpi=200), ma questo sembra fare poca differenza. Ho anche provato a utilizzare i formati di immagine differnet, ma sembrano tutti un po 'sbiaditi e non molto nitidi.

Qualcun altro ha avuto questo problema?

Qualsiasi aiuto sarebbe molto apprezzato

+3

Perché non usi un formato di grafica vettoriale come eps o pdf? –

+0

[Questa domanda] (http://stackoverflow.com/q/332289/875127) riguarda la modifica della dimensione/dpi/risoluzione di un'immagine, ma sembra che tu l'abbia provato. Dai un'occhiata nel caso ci sia qualcosa che ti sei perso. –

+2

È consigliabile utilizzare un formato vettoriale per grafici. Sono ben supportati da LaTeX. –

risposta

10

È possibile salvare le immagini in un formato vettoriale in modo che essi saranno scalabile senza perdita di qualità. Tali formati sono PDF ed EPS. Basta cambiare l'estensione a .pdf o .eps e matplotlib scriverà il formato immagine corretto. Ricordare LaTeX piace EPS e PDFLaTeX piace immagini PDF. Sebbene i più moderni eseguibili LaTeX siano PDFLaTeX sotto mentite spoglie e convertano al volo file EPS (stesso effetto come se includeste il pacchetto epstopdf nel vostro preambolo, che potrebbe non funzionare come vorreste).

In alternativa, aumentare il DPI, molto. Questi sono i numeri che si dovrebbe tenere a mente:

  • 300dpi: stampa su carta comune
  • 600dpi: stampe su carta professionale. La maggior parte delle stampanti per ufficio commerciali raggiunge questo risultato.
  • 1200 dpi: qualità di poster/brochure professionale.

io uso questi per adattare la qualità delle figure PNG in combinazione con l'opzione figsizefigure s', che permette per il testo correttamente in scala e la grafica come migliorare la qualità attraverso dpi.

+1

Oppure prova il backend pdf http://matplotlib.org/users/pgf.html – pelson

+0

Grazie, i file .eps producono dati di qualità molto più elevata in lyx – user1696811

Problemi correlati