Jupyter
· 阅读需 3 分钟
简介
Jupyter 是一个开源的交互式编程和数据分析工具。可以在浏览器的界面中编写代码、运行代码、可视化结果,并添加富文本(如 Markdown)进行说明,形成可重复、可分享的文档。
特点
- 交互式编程
支持逐行或分块执行代码,实时查看结果(如图表、表格、文本等)。 特别适合探索性数据分析(EDA)和快速原型开发。 - 多语言支持
原生支持 Python(最常用),通过安装内核(kernel)可扩展至 R、Julia、Scala、JavaScript 等 40+ 种语言。 - 富文本与可视化
支持 Markdown、LaTeX、HTML 编写文档,结合代码和说明(如数学公式、图片)。 集成 Matplotlib、Plotly、Bokeh 等可视化库,直接显示图表。 - 跨平台与云端集成
可在本地或远程服务器运行,支持 Docker 部署。 与 Google Colab、Kaggle Notebooks、JupyterHub 等云端平台无缝衔接
安装JupterLab
# 使用 conda 创建独立环境
conda create -n your_env_name python=x.x
# 进入环境
conda activate your_env_name
# 安装jupyter
conda install jupyterlab
# 启动
jupyter-lab
多环境单实例(未验证)
nb_conda_kernels
使用已经安装的conda环境作为内核,实现多个版本的python或其它语言环境在单个Jupyter实例中并存
# 进入环境(可以是其它环境)
activate base
# 安装 jupyter (注意要用 pip)
pip install jupyterlab
# 安装 nb_conda_kernels
conda install -c conda-forge nb_conda_kernels
# 列出所有可用的内核,包括来自不同Conda环境的内核
jupyter kernelspec list
以上未验证,
自定义配置
# 生成配置文件
jupyter-lab --generate-config // .jupyter/jupyter_lab_config.py
# 修改配置(示例)
c.ServerApp.root_dir = 'jupyter/root/path/'
- 允许其他机器访问使用
# 1. 设定密码会生成配置文件 ~/.jupyter/jupyter_server_config.json
jupyter server password
# 2. 修改配置文件如下
{
"ServerApp": {
"ip": "*", // 必须
"port": 8899,
"allow_remote_access": true, // 必须
"root_dir": "jupyter/root/path/" // 指定根目录
}
}
- 后台启动
# 推荐,无日志输出保存
nohup jupyter-lab >/dev/null 2>&1 &
- 关闭
# 进入环境
conda activate your_env_name
# 查询进程id
ps -ef | grep your_env_name
# kill 进程
kill -9 xxx
# 退出环境
conda deactivate
- 汉化
conda install -c conda-forge jupyterlab-language-pack-zh-CN
参考文章
扩展内核
Rust
-
安装Rust(略)
-
安装Jupyter 的 Rust 内核扩展 谷歌开源的evcxr
cargo install evcxr_jupyter
evcxr_jupyter --install
C语言Jupyter内核
pip install jupyter-c-kernel
install_c_kernel
已知问题
- evcxr_jupyter 和 jupyter-c-kernel 都需要
gcc
JupyterHub
官方提供多用户使用方案:The Littlest JupyterHub