A couple of us are trying to figure out how to scale arrows in a quiver
plot so that we can exactly specify what the output arrows look like.
For example, we'd like to scale the vectors to half of their size, and
have it look like that on the quiver plot.
So I tried even just getting a quiver plot to plot an arrow exactly as I
passed it, without it scaling anything. My attempt is this:
import matplotlib.pylab as plt
fig=plt.figure(figsize=[6,6])
q=plt.quiver([0],[0],[1],[1],units='x',scale=1,angles='xy')
ax=plt.axis([0,1.5,0,1.5])
plt.grid(True)
plt.savefig('test.png')
I'm trying to get the arrow to go from (0,0) to (1,1). However, with
units='x', it's just short, and with units='y', it's just a bit too
long. Furthermore, if I don't make the aspect ratio equal to one, I get
wild results since the x-axis and y-axis are different units then. It
would be really nice if there was a way to say units='data' (for data
coordinates), and then if scale=1, the arrows would be drawn with the
heads and tails at exactly the passed points. If scale=2, then each
arrow would be drawn exactly half of its length. I realize that
units='data' might mess up the other measurements of an arrow, though,
so maybe another parameter is called for, like a scale_units, that
defaults to units.
What do people think?
Thanks,
Jason
------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
Matplotlib-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-users