Rasterizando múltiples elementos en matplotlib.

Tengo problemas al rasterizar muchas líneas en un gráfico usando la palabra clave rasterized = True usando la salida pdf. Alguna información de la versión:

matplotlib versión 1.1.1rcubuntu 12.04python 2.7.3

Aquí hay un ejemplo básico que demuestra mi problema:

# Import matplotlib to create a pdf document
import matplotlib
matplotlib.use('Agg')
from matplotlib.backends.backend_pdf import PdfPages
pdf = PdfPages('rasterized_test.pdf')

import matplotlib.pylab as plt

# some test data
import numpy as np
ts = np.linspace(0,2*np.pi,100) * np.ones((200,100)) 
ts += (np.linspace(0, np.pi, 200)[np.newaxis] * np.ones((100,200))).T
ys = np.sin(ts)

fig = plt.figure() 
ax = fig.add_subplot(111)
ax.plot(ts[0], ys.T, color='r', lw=0.5, alpha=0.5, rasterized=True)
pdf.savefig()

pdf.close()

Esencialmente, tengo un montón (200 en este caso) de líneas superpuestas que hacen que la figura resultante (no rasterizada) sea demasiado difícil de cargar. Me gustaría rasterizar estas líneas, de manera que las etiquetas de los ejes (y otros elementos de la gráfica, no mostrados) sigan siendo vectores mientras las trayectorias de la solución se aplanan en un fondo de trama único. Sin embargo, al usar el código anterior, la imagen tarda mucho tiempo en cargarse, ya que cada trayectoria se rasteriza de forma independiente, lo que da como resultado múltiples capas. (Si abro el pdf resultante con un programa como inkscape, puedo manipular cada trayectoria de forma independiente).

¿Es posible aplanar todos los elementos rasterizados en una sola capa, por lo que el tamaño del PDF se reduciría considerablemente?

¡Gracias!

Respuestas a la pregunta(1)

Su respuesta a la pregunta