Closed
Description
Bug report
pyplot hangs for simple example.
This issue is there for a while now (~1 year). I was expecting this would get solved eventually.
I've tried reinstalling ubuntu 16.04, but that didn't solve the issue.
Code for reproduction
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
plt.show()
Actual outcome
Console gets stuck. I've even left it overnight but console was still stuck.
'top' shows python at 100%.
if I run commands 1 line at a time then IDLE gets stuck at 'plt.plot([1, 2, 3, 4])'.
gdb backtrace when script gets hung:
username@username-ubuntu:~/Desktop$ gdb --args python3 plot.py
GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.5) 7.11.1
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from python3...Reading symbols from /usr/lib/debug/.build-id/59/a8ef36ca241df24686952480966d7bc0d7c6ea.debug...done.
done.
(gdb) r
Starting program: /usr/bin/python3 plot.py
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff27d5700 (LWP 5997)]
[New Thread 0x7ffff1fd4700 (LWP 5998)]
[New Thread 0x7fffed7d3700 (LWP 5999)]
^C
Thread 1 "python3" received signal SIGINT, Interrupt.
0x00007ffff44fb34b in dgemm_itcopy_EXCAVATOR () from /usr/lib/libopenblas.so.0
(gdb) bt
#0 0x00007ffff44fb34b in dgemm_itcopy_EXCAVATOR () from /usr/lib/libopenblas.so.0
#1 0x00007ffff311de89 in dgemm_nn () from /usr/lib/libopenblas.so.0
#2 0x00007ffff501c49d in cblas_dgemm () from /usr/lib/libblas.so.3
#3 0x00007ffff534a8e9 in ?? () from /usr/lib/python3/dist-packages/numpy/core/multiarray.cpython-35m-x86_64-linux-gnu.so
#4 0x00007ffff531f7f4 in ?? () from /usr/lib/python3/dist-packages/numpy/core/multiarray.cpython-35m-x86_64-linux-gnu.so
#5 0x00007ffff53202f9 in ?? () from /usr/lib/python3/dist-packages/numpy/core/multiarray.cpython-35m-x86_64-linux-gnu.so
#6 0x00000000004e9ba7 in PyCFunction_Call () at ../Objects/methodobject.c:98
#7 0x00000000005372f4 in call_function (oparg=<optimized out>, pp_stack=0x7fffffffcb80) at ../Python/ceval.c:4705
#8 PyEval_EvalFrameEx () at ../Python/ceval.c:3236
#9 0x0000000000540199 in _PyEval_EvalCodeWithName () at ../Python/ceval.c:4018
#10 0x000000000053bd92 in fast_function (nk=<optimized out>, na=<optimized out>, n=<optimized out>, pp_stack=0x7fffffffcd90, func=<optimized out>)
at ../Python/ceval.c:4813
#11 call_function (oparg=<optimized out>, pp_stack=0x7fffffffcd90) at ../Python/ceval.c:4730
#12 PyEval_EvalFrameEx () at ../Python/ceval.c:3236
#13 0x0000000000540f9b in _PyEval_EvalCodeWithName (qualname=0x0, name=0x0, closure=0x0, kwdefs=0x0, defcount=8, defs=0x7fffe5ccc920, kwcount=5, kws=<optimized out>,
argcount=<optimized out>, args=<optimized out>, locals=<optimized out>, globals=<optimized out>, _co=<code at remote 0x7fffea8e5c00>) at ../Python/ceval.c:4018
#14 PyEval_EvalCodeEx () at ../Python/ceval.c:4039
#15 0x00000000004ebe37 in function_call.lto_priv () at ../Objects/funcobject.c:627
#16 0x00000000005c1797 in PyObject_Call () at ../Objects/abstract.c:2165
#17 0x00000000004fb9ce in method_call.lto_priv () at ../Objects/classobject.c:330
#18 0x00000000005c1797 in PyObject_Call () at ../Objects/abstract.c:2165
#19 0x0000000000574999 in slot_tp_init () at ../Objects/typeobject.c:6268
#20 0x000000000057f03c in type_call.lto_priv () at ../Objects/typeobject.c:905
#21 0x00000000005c1797 in PyObject_Call () at ../Objects/abstract.c:2165
#22 0x000000000053920b in ext_do_call (nk=<optimized out>, na=0, flags=<optimized out>, pp_stack=0x7fffffffd168, func=<type at remote 0x155fdd8>)
at ../Python/ceval.c:5034
#23 PyEval_EvalFrameEx () at ../Python/ceval.c:3275
#24 0x0000000000540f9b in _PyEval_EvalCodeWithName (qualname=0x0, name=0x0, closure=0x0, kwdefs=0x0, defcount=0, defs=0x0, kwcount=6, kws=<optimized out>,
argcount=<optimized out>, args=<optimized out>, locals=<optimized out>, globals=<optimized out>, _co=<code at remote 0x7fffea973930>) at ../Python/ceval.c:4018
#25 PyEval_EvalCodeEx () at ../Python/ceval.c:4039
#26 0x00000000004ebe37 in function_call.lto_priv () at ../Objects/funcobject.c:627
#27 0x00000000005c1797 in PyObject_Call () at ../Objects/abstract.c:2165
#28 0x000000000053920b in ext_do_call (nk=<optimized out>, na=2, flags=<optimized out>, pp_stack=0x7fffffffd418, func=<function at remote 0x7fffe64fc6a8>)
at ../Python/ceval.c:5034
#29 PyEval_EvalFrameEx () at ../Python/ceval.c:3275
#30 0x00000000005406df in _PyEval_EvalCodeWithName () at ../Python/ceval.c:4018
#31 0x000000000053bd92 in fast_function (nk=<optimized out>, na=<optimized out>, n=<optimized out>, pp_stack=0x7fffffffd620, func=<optimized out>)
at ../Python/ceval.c:4813
#32 call_function (oparg=<optimized out>, pp_stack=0x7fffffffd620) at ../Python/ceval.c:4730
#33 PyEval_EvalFrameEx () at ../Python/ceval.c:3236
#34 0x000000000053b7e4 in fast_function (nk=<optimized out>, na=<optimized out>, n=<optimized out>, pp_stack=0x7fffffffd750, func=<optimized out>)
---Type <return> to continue, or q <return> to quit---
at ../Python/ceval.c:4803
#35 call_function (oparg=<optimized out>, pp_stack=0x7fffffffd750) at ../Python/ceval.c:4730
#36 PyEval_EvalFrameEx () at ../Python/ceval.c:3236
#37 0x0000000000540199 in _PyEval_EvalCodeWithName () at ../Python/ceval.c:4018
#38 0x000000000053c1d0 in fast_function (nk=<optimized out>, na=<optimized out>, n=<optimized out>, pp_stack=0x7fffffffd960, func=<optimized out>)
at ../Python/ceval.c:4813
#39 call_function (oparg=<optimized out>, pp_stack=0x7fffffffd960) at ../Python/ceval.c:4730
#40 PyEval_EvalFrameEx () at ../Python/ceval.c:3236
#41 0x0000000000540199 in _PyEval_EvalCodeWithName () at ../Python/ceval.c:4018
#42 0x000000000053c1d0 in fast_function (nk=<optimized out>, na=<optimized out>, n=<optimized out>, pp_stack=0x7fffffffdb70, func=<optimized out>)
at ../Python/ceval.c:4813
#43 call_function (oparg=<optimized out>, pp_stack=0x7fffffffdb70) at ../Python/ceval.c:4730
#44 PyEval_EvalFrameEx () at ../Python/ceval.c:3236
#45 0x0000000000540199 in _PyEval_EvalCodeWithName () at ../Python/ceval.c:4018
#46 0x0000000000540e4f in PyEval_EvalCodeEx () at ../Python/ceval.c:4039
#47 PyEval_EvalCode (co=<optimized out>, globals=<optimized out>, locals=<optimized out>) at ../Python/ceval.c:777
#48 0x000000000060c272 in run_mod () at ../Python/pythonrun.c:976
#49 0x000000000060e71a in PyRun_FileExFlags () at ../Python/pythonrun.c:929
#50 0x000000000060ef0c in PyRun_SimpleFileExFlags () at ../Python/pythonrun.c:396
#51 0x000000000063fb26 in run_file (p_cf=0x7fffffffdde0, filename=0xa74280 L"plot.py", fp=0xb7d610) at ../Modules/main.c:318
#52 Py_Main () at ../Modules/main.c:768
#53 0x00000000004cfeb1 in main () at ../Programs/python.c:65
#54 0x00007ffff7810830 in __libc_start_main (main=0x4cfdd0 <main>, argc=2, argv=0x7fffffffdff8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>,
stack_end=0x7fffffffdfe8) at ../csu/libc-start.c:291
#55 0x00000000005d6049 in _start ()
(gdb) q
A debugging session is active.
Inferior 1 [process 5993] will be killed.
Quit anyway? (y or n) y
- Operating system: Ubuntu 16.04
- Matplotlib version: 2.1.2
- Matplotlib backend (
print(matplotlib.get_backend())
): TkAgg - Python version: 3.5.2
- Jupyter version (if applicable):
- Other libraries:
Install source:
pip3 install matplotlib