如何配置Jupyter内核使用pythonw解决Matplotlib OSX渲染报错?
解决Jupyter Notebook中
%matplotlib osx的RuntimeError问题 你已经装了python.app,接下来核心就是让Jupyter内核用pythonw替代默认的python,这里给你两个亲测有效的实用方法:
方法一:修改现有内核配置(快速调整)
先拿到pythonw的绝对路径,打开终端跑:
which pythonw会输出类似
/Users/xxx/miniconda3/envs/your_env/bin/pythonw的路径,把它记下来。查看Jupyter内核的安装路径:
jupyter kernelspec list找到你常用的那个内核(比如
python3)对应的路径,比如/usr/local/share/jupyter/kernels/python3。进入该路径,编辑
kernel.json文件:
打开文件后,把argv数组里的第一个元素(原来的python路径)替换成刚才拿到的pythonw路径,还可以把display_name改成Python 3 (pythonw),方便你识别。修改后的文件大概是这样:{ "argv": [ "/Users/xxx/miniconda3/envs/your_env/bin/pythonw", "-m", "ipykernel_launcher", "-f", "{connection_file}" ], "display_name": "Python 3 (pythonw)", "language": "python" }重启Jupyter Notebook,选择修改后的内核,再运行
%matplotlib osx试试。
方法二:新建专用内核(更稳妥,不影响原有环境)
如果你不想改动原来的内核,直接新建一个用pythonw的内核更省心:
- 先激活你的conda环境(如果用的是conda):
conda activate your_env - 执行命令创建新内核:
pythonw -m ipykernel install --user --name=pythonw_matplotlib --display-name="Python (pythonw for matplotlib)" - 重启Jupyter Notebook,在内核选择列表里找到刚才新建的那个内核,切换过去后运行
%matplotlib osx,应该就能正常工作了。
小提示
- 要是修改后还是有问题,先确认pythonw确实是对应conda环境里的版本,别用错了系统默认的。
- 记得重启Jupyter服务器,不然内核的修改不会生效。
内容的提问来源于stack exchange,提问作者oshi2016
相关产品推荐
相关产品推荐

