2011-05-06 12 views
7

Estoy tratando de trazar algunas flechas usando matploblib con la función de temblor. Pero quiero elegir la longitud de cada flecha individualmente usando una matriz.Escala de aljaba Matplotlib

http://matplotlib.sourceforge.net/api/pyplot_api.html#matplotlib.pyplot.quiver http://matplotlib.sourceforge.net/examples/pylab_examples/quiver_demo.html

En estos demos y documentación, que es el programa que puede cambiar las escalas de forma proporcional a las unidades (x, y, ancho, altura, XY, pulgadas, ...), hay una forma de definir una escala para cada flecha?

Respuesta

9

Para especificar la ubicación de cada flecha y el vector y, la longitud es una especificación excesiva de la gráfica del temblor. Entonces, lo que debe hacer es cambiar los datos que está trazando.

Si usted tiene el campo de vectores U y V (el mismo U y V como sus ejemplos), puede normalizarlos por:

N = numpy.sqrt(U**2+V**2) # there may be a faster numpy "normalize" function 
U2, V2 = U/N, V/N 

continuación, puede aplicar cualquier matriz de factor de escala que desee:

U2 *= F 
V2 *= F 
+0

Gracias, esto me ayudó. – Mibou