When plotting interactively is it actually possible to update the
legend with the current plots while retaining the previous legend
settings (position, visibility, etc.) ?
I think it is possible, but will be quite difficult to do for a normal
user. I may try to add some method that can ease this.
here are some observations on the mpl legend operation:
leg = ax.get_legend() #0 OK. but the recommended way to update a
legend seems to be using #1 ?
leg = ax.legend() #1 OK
leg.draggable(True) #3 enables the legend to be moved with mouse.
New in mpl1.0.1. OK
leg.set_visible(False) #4 hides legend. OK
ax.legend(loc=3) #2 defines a legend location. OK but why no
locations outside the plotting area ?
Legend can be located outside the plotting area, anywhere you want.
http://matplotlib.sourceforge.net/users/legend_guide.html#legend-location
ax.legend(ax.lines) #5 labels are different by default from #1. ??
http://matplotlib.sourceforge.net/api/pyplot_api.html#matplotlib.pyplot.legend
If there is a single non-keyword argument, it is treated as a list of labels.
ax.legend() #6 draws an empty square. ??
To me, the current behavior seems reasonable. What do you expect?
leg._loc: #7 allows you to know the legend location. in
#2 value is int, in #3 value is a tuple (if the legend has been moved)
OK but why is the attribute private ?
I guess this is a valid point. I'll add a public interface to access this value.
What to exclude from a legend :
Objects without an explicit label (labels starting with _) #8. OK
Objects that are not in the viewing area #9. should be default
behavior ??
Objects that are not set visible #10. should be default
behavior ??
For #9, I don't think there is an exact algorithm to check if a path
is inside the viewing are or not when cubic splines are involved. If
there is (and that algorithm is feasible), we may consider making that
a default behavior. Otherwise, I'm not inclined to include a partial
solution.
For #10, I'll make it a default behavior if there is no objection.
Regards,
-JJ
···
On Sun, Jan 30, 2011 at 10:32 PM, Peter Butterworth <butterw@...149...> wrote:
--
thanks,
peter butterworth
------------------------------------------------------------------------------
Special Offer-- Download ArcSight Logger for FREE (a $49 USD value)!
Finally, a world-class log management solution at an even better price-free!
Download using promo code Free_Logger_4_Dev2Dev. Offer expires
February 28th, so secure your free ArcSight Logger TODAY!
http://p.sf.net/sfu/arcsight-sfd2d
_______________________________________________
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
matplotlib-devel List Signup and Options