Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 6edcb47

Browse files
committed
ENH: move answers into sub-directory
1 parent d8ed6a2 commit 6edcb47

File tree

3 files changed

+43
-4
lines changed

3 files changed

+43
-4
lines changed

key/00-explore.py

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import matplotlib.pyplot as plt
2+
import numpy as np
3+
plt.ion()
4+
5+
last_ev = None
6+
7+
8+
def event_printer(event):
9+
"""Helper function for exploring events.
10+
11+
Prints all public attributes +
12+
"""
13+
# capture the last event
14+
global last_ev
15+
last_ev = event
16+
if event.inaxes is not None:
17+
print(f'{event.name} ({event.xdata:.3f}, {event.ydata:.3f})')
18+
else:
19+
print(f'{event.name}')
20+
21+
22+
th = np.linspace(0, 2*np.pi, 64)
23+
fig, ax = plt.subplots()
24+
ax.plot(th, np.sin(th), 'o-', picker=5)
25+
26+
cids = {k: fig.canvas.mpl_connect(k, event_printer)
27+
for k in ('button_press_event', 'button_release_event',
28+
'scroll_event',
29+
'key_press_event', 'key_release_event',
30+
'pick_event')}

01-callable_answer.py renamed to key/01-callable.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ def collect_string(self):
3939
return ''.join([ev.key for ev in self.event_deque
4040
if ev.name == 'key_press_event'])
4141

42+
4243
fc = FormatterCollector()
43-
cid = fig.canvas.mpl_connect('key_press_event', fc)
44-
cid2 = fig.canvas.mpl_connect('key_release_event', fc)
45-
cid2 = fig.canvas.mpl_connect('button_press_event', fc)
44+
cids = {k: fig.canvas.mpl_connect(k, fc)
45+
for k in ('key_press_event')}

02-event_filter_answer.py renamed to key/02-event_filter.py

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66

77
class LineMaker:
8-
def __init__(self, ln):
8+
def __init__(self, ln, *, color_cycle=None):
99
# stash the current data
1010
self.xdata = list(ln.get_xdata())
1111
self.ydata = list(ln.get_ydata())
@@ -73,6 +73,15 @@ def on_key(self, event):
7373
# ask the GUI to re-draw the next time it can
7474
self.ln.figure.canvas.draw_idle()
7575

76+
try:
77+
lw = int(event.key)
78+
except (ValueError):
79+
pass
80+
else:
81+
self.ln.set_linewidth(lw)
82+
self.ln.figure.canvas.draw_idle()
83+
84+
7685
fig, ax = plt.subplots()
7786
ln, = ax.plot([], [], '-o')
7887
line_maker = LineMaker(ln)

0 commit comments

Comments
 (0)