使用IPython控制台生成matplotlib.pyplot图表,我最近才得到Bus error (core dumped)
。
我的操作系统是Ubuntu 16.04 LTS,我使用的是Anaconda Python发行版。
Python 2.7.14 |Anaconda custom (64-bit)| (default, Dec 7 2017, 17:05:42)
IPython 5.4.1 -- An enhanced Interactive Python.
In [1]: import matplotlib.pyplot as plt
In [2]: plt.get_backend()
Out[2]: u'Qt5Agg'
In [3]: plt.plot(range(10))
Bus error (core dumped)
如果我使用 jupyter 笔记本,那么plt.get_backend()
报告%matplotlib inline
,一切正常。
所以我怀疑它的Qt5。
我很困惑,因为我已经尝试了我所知道的一切。我的笔记本电脑与Anaconda的设置相同,工作正常。
谢谢!
我的问题!
安装 Tk(C++ 库(和 Tkinter(围绕它的 python 包装器( - 归功于在 Ubuntu 16.04 上的 virtualenv 中使用不同的后端运行 matplotlib - Boris Belousov。
sudo apt-get install tk-dev python-tk python3-tk
然后在IPython
运行
import matplotlib as mpl
mpl.use('TkAgg')
import matplotlib.pyplot as plt
plt.plot(range(10))
plt.show()
这将生成一个打印窗口。