Tengo un bucle que ejecuta el cuerpo alrededor de 200 veces. En cada iteración de ciclo, realiza un cálculo sofisticado, y luego como depuración, deseo producir un mapa de calor de una matriz NxM. Pero, generar este mapa de calor es insoportablemente lento y ralentiza significativamente un algoritmo ya lento.pyplot: realmente lento creando heatmaps
Mi código es a lo largo de las líneas:
import numpy
import matplotlib.pyplot as plt
for i in range(200):
matrix = complex_calculation()
plt.set_cmap("gray")
plt.imshow(matrix)
plt.savefig("frame{0}.png".format(i))
La matriz, de numpy, no es enorme --- 300 x 600 de dobles. Incluso si no guardo la figura y en su lugar actualizo un gráfico en la pantalla, es incluso más lento.
Seguramente debo estar abusando de pyplot. (Matlab puede hacer esto, no hay problema.) ¿Cómo puedo acelerar esto?
Todavía lento, pero al menos es soportable ahora. – carl