[Matplotlib-users] pick events don't work with twiny

Neal Becker ndbecker2 at gmail.com
Tue Jan 30 11:15:39 EST 2018


Benjamin Root wrote:

> The problem is that the second axes is getting the pick events, because it
> is on top of the first axes. This has been a problem for a long time, and
> we haven't found a good solution for it.
> 
> Ben Root
> 

That was my guess.  Is there any workaround?

> On Tue, Jan 30, 2018 at 10:10 AM, Neal Becker
> <ndbecker2 at gmail.com> wrote:
> 
>> I find that pick events are fine until I add twiny.  In that case,
>> nothing happens when clicking.
>>
>> THe code outline is like:
>>
>> fig, ax = plt.subplots()
>> ax2 = ax.twiny()
>> ax.semilogy(...)
>> fig.canvas.mpl_connect('pick_event', onpick)
>> ax2_xaxis = np.linspace (*ax.get_xlim(), endpoint=True,)/conversion
>> ax2.semilogy (ax2_xaxis, np.ones (len(ax2_xaxis)) * 1e-3, alpha=0)
>> ax2.set_xlabel(...)
>> ...
>>
>> removing all the lines about ax2 will restore pick function.
>>




More information about the Matplotlib-users mailing list