Matplotlib quiver scale
To specify each arrow's location and vector and length is an over-specification of the quiver plot. So what you need to do is change the data that you are plotting.
If you have the vector field U and V (same U and V as your examples), you can normalize them by:
N = numpy.sqrt(U**2+V**2) # there may be a faster numpy "normalize" function
U2, V2 = U/N, V/N
Then you can apply whatever scaling factor array you want:
U2 *= F
V2 *= F