8000 Merge pull request #6983 from anntzer/dont-crash-on-interactive-inval… · matplotlib/matplotlib@ac01d85 · GitHub
[go: up one dir, main page]

Skip to content

Commit ac01d85

Browse files
committed
Merge pull request #6983 from anntzer/dont-crash-on-interactive-invalid-log
FIX: Catch invalid interactive switch to log scale. Conflicts: lib/matplotlib/backend_bases.py did not backport draw -> draw_idle change
1 parent fab69a1 commit ac01d85

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

lib/matplotlib/backend_bases.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2543,7 +2543,11 @@ def key_press_handler(event, canvas, toolbar=None):
25432543
ax.set_yscale('linear')
25442544
ax.figure.canvas.draw()
25452545
elif scale == 'linear':
2546-
ax.set_yscale('log')
2546+
try:
2547+
ax.set_yscale('log')
2548+
except ValueError as exc:
2549+
warnings.warn(str(exc))
2550+
ax.set_yscale('linear')
25472551
ax.figure.canvas.draw()
25482552
# toggle scaling of x-axes between 'log and 'linear' (default key 'k')
25492553
elif event.key in toggle_xscale_keys:
@@ -2553,7 +2557,11 @@ def key_press_handler(event, canvas, toolbar=None):
25532557
ax.set_xscale('linear')
25542558
ax.figure.canvas.draw()
25552559
elif scalex == 'linear':
2556-
ax.set_xscale('log')
2560+
try:
2561+
ax.set_xscale('log')
2562+
except ValueError:
2563+
warnings.warn(str(exc))
2564+
ax.set_xscale('linear')
25572565
ax.figure.canvas.draw()
25582566

25592567
elif (event.key.isdigit() and event.key != '0') or event.key in all:

0 commit comments

Comments
 (0)
0