如何在PyCharm的Jupyter环境中生成pyplot可交互式缩放绘图
问题解答
PyCharm IDE中运行Jupyter Notebook时完全支持生成可独立窗口交互的pyplot绘图,你遇到的崩溃问题主要是后端配置时机和环境冲突导致的,具体解决方法如下:
- 崩溃核心原因:你在导入
pyplot之后才修改matplotlib后端,此时pyplot已经初始化了默认后端,强制修改会触发内核冲突崩溃。 - 正确配置步骤:
- 把
mpl.use('TkAgg')这行代码移到导入matplotlib.pyplot之前执行,调整后的代码顺序如下:
# %% import numpy as np import matplotlib as mpl # 必须在导入pyplot之前设置后端 mpl.use('TkAgg') # 也可以替换为你环境中可用的Qt5Agg import matplotlib.pyplot as plt # Data for plotting t = np.arange(0.0, 2.0, 0.00001) s = 1 + np.sin(2 * np.pi * t) fig, ax = plt.subplots() ax.plot(t, s) ax.set(xlabel='time (s)', ylabel='voltage (mV)', title='About as simple as it gets, folks') ax.grid() plt.show()- 如果调整代码顺序后仍然异常,检查PyCharm配置:打开
File > Settings > Tools > Python Scientific,取消勾选Show plots in tool window选项,禁止PyCharm默认把绘图内嵌到IDE工具窗,就会自动弹出独立的交互窗口。
- 把
- 额外注意事项:如果你的环境没有安装对应后端依赖,会出现后端加载失败,对应安装依赖即可:
- 使用TkAgg后端:Linux环境安装
python3-tk,Windows/macOS环境确认Python安装时勾选了Tkinter组件 - 使用Qt5Agg后端:运行
pip install pyqt5安装依赖
- 使用TkAgg后端:Linux环境安装
配置完成后弹出的独立窗口本身就支持缩放、平移、保存等交互操作,完全符合你的使用需求。
内容的提问来源于stack exchange,提问作者Thomas LESIEUR
相关产品推荐
相关产品推荐

