Paul Ivanov, on 2010-09-06 18:01, wrote:
> I want to have two legends (from different axes) positioned right up
> against on another.
> 
> Here's a static example, except I want the second legend to be defined
> relative to the first (if leg is moved, I want leg2 to move as well). I
> can't seem to figure out the proper bbox_to_anchor and bbox_transform
> parameters to pass to the second legend() to make this work.
> 
> # small example
> ax = plt.subplot(1,1,1)
> ax2 = ax.twinx()
> ax.plot([0,1], label='ax1')
> ax2.plot([1,0], 'r--',label='ax2')
> leg = ax.legend(loc='lower left', borderaxespad=0,
>       bbox_to_anchor=(.85,.85))
> leg2 = ax2.legend(loc='upper left', borderaxespad=0,
>       bbox_to_anchor=(.85,.85))
> 

I guess I really just want one legend, so I figured out an alternative
solution:

# alternative to having two legends
ax = plt.subplot(1,1,1)
ax2 = ax.twinx()
lines=  ax.plot([0,1], label='ax1')
lines2= ax2.plot([4,3], 'r--',label='ax2')
lines.extend(lines2)
labels = [l.get_label() for l in lines]
leg = ax.legend(lines, labels)

Is this a reasonable way of achieving the desired result?

thanks,
Paul

------------------------------------------------------------------------------
This SF.net Dev2Dev email is sponsored by:

Show off your parallel programming skills.
Enter the Intel(R) Threading Challenge 2010.
http://p.sf.net/sfu/intel-thread-sfd
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to