Hydrogen 能用的前提是成功安装并注册 Jupyter 内核;需先执行 pip install ipykernel,再运行 python -m ipykernel install --user --name python3 --display-name "Python 3",conda 用户须先激活环境,注册后重启 Atom 或执行 Hydrogen: Update Kernels。

Hydrogen 能用,但前提是它真能找到一个可用的 Jupyter 内核——不是装了 jupyter 就够,也不是装了 python3 就自动有内核。很多人卡在“Kernel not found”上,根本原因就在这里。
Hydrogen 启动报 “Kernel not found” 怎么办
这不是插件没装好,而是 ipykernel 没装、没注册,或注册路径对不上。
- 先确认是否已安装:
pip install ipykernel(conda 用户用conda install ipykernel) - 再注册内核:
python -m ipykernel install --user --name python3 --display-name "Python 3" - 如果用 conda 环境,必须先
conda activate myenv,再运行上面那条命令 - 注册后重启 Atom,或手动执行
Hydrogen: Update Kernels(Cmd/Ctrl+Shift+P 调出命令面板) -
jupyter kernelspec list输出里必须看到python3条目,否则 Hydrogen 扫不到
Shift+Enter 没反应 / 输出区空白
状态栏右下角不显示绿色圆点,说明内核看似连接成功,实则没真正启动。
- 检查 Atom 底部状态栏右下角:是否显示
Python 3和绿色圆点?没有就点它手动 Connect;黄色/红色说明启动失败 - 打开 Developer Tools(Ctrl+Shift+I),看 Console 里有没有
Kernel died或ZMQError - 禁用冲突插件:
atom-julia-client、ink、旧版language-jupyter,它们会抢占通信端口 - 别在未保存的文件里试——Hydrogen 对临时文件支持不稳定
绘图不出图、plt.show() 无效
Hydrogen 不拦截 show(),也不默认启用交互后端,得靠 IPython 魔法命令驱动。
- 必须在同一个执行块中加:
%matplotlib inline(注意是魔法命令,不是 Python 语句) - 如果用了
plt.ioff()或设了Agg后端,图形会被静默丢弃,可重置:import matplotlib; matplotlib.use('TkAgg') - Plotly 用户注意:
offline.iplot()已废弃,改用fig.show(),且内核需装plotly>=5.0 - macOS Retina 屏缩放设为 200% 时,图像渲染区可能为空白,临时调成 100% 测试
Watch Expression 显示 undefined
Watch 不是全局监听器,只作用于当前 kernel 的执行上下文,变量必须已定义且在当前命名空间中。
- 函数内部定义的变量(如
def f(): x = 1)无法被 watch,函数退出后变量即销毁 - 整文件运行(Run File)时,watch 表达式写在顶部但变量在底部才赋值,watch 会在执行前就求值,结果自然是
undefined - 用
del x或exec()动态执行字符串,会破坏静态变量追踪链
最易被忽略的一点:Hydrogen 本身不启动内核,它只是个客户端。所有稳定性问题,根源几乎都在内核注册路径、环境隔离、或 shell 初始化脚本对 apm 不生效这三处。别花时间调 Hydrogen 设置,先确保 jupyter console --existing 能在终端跑通。


















