sto generando una trama di contorno depositato presso la funzione matplotlib.pyplot.contourf(). Gli argomenti nella chiamata alla funzione sono:Aliasing durante il salvataggio matplotlib riempita trama di contorno al pdf o eps
contourf(xvec,xvec,w,levels,cmap=matplotlib.cm.jet)
dove
xvec = numpy.linspace(-3.,3.,50)
levels = numpy.linspace(-0.01,0.25,100)
e w è i miei dati.
La trama risultante sembra abbastanza buona sullo schermo, ma quando salgo in pdf utilizzando una chiamata a matplotlib.pyplot.savefig(), il pdf risultante ha un sacco di aliasing (penso che sia quello che è) in corso . La chiamata a savefig è semplicemente savefig('filename.pdf')
. Ho provato a utilizzare l'argomento dpi, ma senza fortuna. Una chiamata a matplotlib.get_backend()
sputa fuori 'TkAgg'.
farò attaccare una figura salvato in formato pdf, rispetto a un dato salvato come png (simile a quello che sembra sullo schermo) per dimostrare il problema:
png wihtout aliasing: https://dl.dropbox.com/u/6042643/wigner_g0.17.png
pdf con aliasing: https://dl.dropbox.com/u/6042643/wigner_g0.17.pdf
Per favore fatemi sapere se ci sono altri dettagli che potrei dare per aiutarvi a dare una risposta. Dovrei ricordare che il salvataggio come .eps dà risultati analoghi come il salvataggio in pdf. Ma il pdf mostra il problema ancora più chiaro. Il mio obiettivo è quello di finire con un Eps di qualità di produzione che posso allegare a un documento in lattice per essere pubblicato come articolo scientifico. Sarei felice con un certo tipo di lavoro intorno dove li risparmio in un formato, quindi convertirlo, se riesco a trovare un modo che dà risultati soddisfacenti.
migliore,
Arne
Quelli sembrano [moiré] (https://en.wikipedia.org/wiki/Moir%C3%A9_pattern) a me. Con il pdf il modello cambia in base al livello di zoom. – tacaswell
@arne: i file collegati sono andati - c'è qualche possibilità di sostituirli? –