python - 在 jupyter 笔记本中同时使用 matplotlib inline 和 qt

标签 python matplotlib ipython jupyter jupyter-notebook

我正在使用 Jupyter(与 IPython)来分析研究数据以及导出数据。我真的很喜欢 Jupyter 提供的笔记本方法:当我在很长一段时间后重新访问实验时,我可以轻松地看到数字与数据的对应关系。这当然是使用内联后端。

但是,当我想探索新数据时,我更喜欢使用 QT 后端。它比内联速度更快,并且可以轻松缩放、放大和缩小,并在左下角很好地显示 X 和 Y 坐标。此外,我可以使用 QT 后端来确定在内联后端中使用的良好 x 和 y 限制。

我尝试过使用%matplotlib笔记本魔法,但它太慢了。对于某些实验,我绘制了约 500 个光谱(每个光谱由约 1000 个数据点组成),这在内联后端中已经很慢了。即使数据点较少,笔记本后端也太慢而无法使用。

因此,每当我绘制某些东西时,我想同时使用 QT 后端和内联后端。 (因此,每当我执行一个绘制数据的单元格时,它都应该显示内联图像,并弹出一个 QT 后端窗口)。这样,我仍然可以对笔记本中的绘图有一个很好的概述,同时也让我可以轻松地探索我的数据。有没有办法实现这个目标?

最佳答案

据我所知,不可能同时使用多个后端。 我所做的就是切换后端并重新绘制。我已经用 matplotlib.use() 完成了或%matplotlib <backend> ,根据我正在工作的版本或环境。 我的印象是这有时不起作用或者可能没有响应,所以我需要重新启动环境。我想维护它并不容易,所以我什至惊讶它几乎总是工作得这么顺利。

可用后端可以列出:

matplotlib.rcsetup.interactive_bk
matplotlib.rcsetup.non_interactive_bk
matplotlib.rcsetup.all_backends

希望这里还有其他有用的信息: https://matplotlib.org/stable/tutorials/introductory/usage.html

关于python - 在 jupyter 笔记本中同时使用 matplotlib inline 和 qt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38128640/

相关文章:

python - Python 中 switch/case 的语法等价物是什么?

python - 如何使用 matplotlib 在现有绘图上绘制 float 饼图

python - Matplotlib 箱线图 x 轴

python - 如何创建传递自定义半径的地理热图

ipython - 如何通过 conda 安装安全地安装 Jupyter/IPython 4?

r - IPython 笔记本和 rmagic/rpy2 : cannot find module ri2py (OSX 10. 8.5、python 2.7、R 3.1)

python - 在 Windows 上编写 CSV

python - KeyError: 0 在字典中遍历字典的键时

python - Flask-Restful:通过 POST 请求将列表传递到 MongoDB

python - 关闭一个打开的 h5py 数据文件