Hi,
I just downloaded and installed the latest matplotlib (0.90.1) and
the following problem occurred:
>>>
plot([0,1])
scatter([0.5], [0.5])
# Should be one Line2D
print gca().lines
# Should be one RegularPolyCollection
print gca().collections
# Now load a legend:
legend()
# Should be one Line2D !!! BUT NOW THERE IS A RegularPolyCollection !!!
print gca().lines
# Should be one RegularPolyCollection
print gca().collections
# Clearing throws the exception cuz it is trying to call
# line methods (get_xdata) on a poly-collection
clf()
>>>
To fix this problem, I edited my axes.py file. In the legend()
function, there is a get_handles() function which does the following
(in psuedo code):
handles = self.lines
handles.extend(self.patches)
handles.extend( --- collections ---)
This is actually modifying the self.lines object. If instead I import
the copy module and do:
handles = copy.copy(self.lines)
then everything behaves better. I haven't done extensive testing to
see if this breaks anything else though. Is there some place to enter
bugs or is posting to this mailing list good enough?
Cheers,
Jessica
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users