[Matplotlib-users] Event connect error when using Tk and scrolling
Juan Nunez-Iglesias
jni.soma at gmail.com
Mon Jan 9 22:06:01 EST 2017
Hi all,
I’m trying to play with the `basic_mpl_connect.py` example from Ben Root’s “Interactive Applications Using Matplotlib” book, reproduced below in its entirety. (With the addition of selecting TkAgg as the backend. I need to do this because I’m aiming to embed into a Tk app *and* the MacOSX backend doesn’t capture my keystrokes.)
Everything works fine, but when I try to use the scroll wheel on my mouse, or two-finger scrolling on my Macbook trackpad, everything dies with the following message:
Traceback (most recent call last):
File "basic_mpl_connect.py", line 20, in <module>
plt.show()
File "/Users/jni/conda/envs/ana/lib/python3.5/site-packages/matplotlib/pyplot.py", line 252, in show
return _show(*args, **kw)
File "/Users/jni/conda/envs/ana/lib/python3.5/site-packages/matplotlib/backend_bases.py", line 192, in __call__
self.mainloop()
File "/Users/jni/conda/envs/ana/lib/python3.5/site-packages/matplotlib/backends/backend_tkagg.py", line 74, in mainloop
Tk.mainloop()
File "/Users/jni/conda/envs/ana/lib/python3.5/tkinter/__init__.py", line 405, in mainloop
_default_root.tk.mainloop(n)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte
This is true even if I explicitly connect the “scroll_event” (below).
Any ideas?
Thanks,
Juan.
===================================
import matplotlib
matplotlib.use('TkAgg')
matplotlib.verbose.level = 'debug'
import matplotlib.pyplot as plt
def process_key(event):
print("Key:", event.key)
def process_button(event):
print("Button:", event.x, event.y, event.xdata, event.ydata, event.button)
def process_scroll(event):
print("Scroll")
fig, ax = plt.subplots(1, 1)
fig.canvas.mpl_connect('key_press_event', process_key)
fig.canvas.mpl_connect('button_press_event', process_button)
fig.canvas.mpl_connect('scroll_event', process_scroll)
plt.show()
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/matplotlib-users/attachments/20170110/d8fa8a73/attachment.html>
More information about the Matplotlib-users
mailing list