SuooL's Blog

蛰伏于盛夏 藏华于当春

Jupyter Notebooks 强化配置折腾记

Introduction

Jupyter Notebooks 是当前学习机器学习、入门科学计算、Python新手的必备热门环境选择。但是使用久了就会觉得它却了些编程环境必备的特性,不够好用。

本文将介绍几种插件和扩展及一些命令来扩展增强 Jupyter Notebooks, 希望能够提高生产力。

配置完成的效果如下:20190801165427.png

Awesome features

  1. 一键环境切换,无须重启切换 Conda 中的 Python 开发环境。
  2. 一键导航单元格,为你的 note 添加目录。
  3. 一键隐 code cell, 专注于输出
  4. 变量监控
  5. 彩色主题
  6. 自动保存

ZheTeng

暗色主题 Dark Mode

命令如下

1
2
3
4
5
6
7
# Kill and exit the Notebook server
# Make sure you are in the base conda environment
conda activate base
# install jupyterthemes
pip install jupyterthemes
# upgrade to latest version
pip install --upgrade jupyterthemes

安装及升级完成上述主题包之后,使用如下命令开启主题:

1
2
# Enable Dark Mode
jt -t onedork -fs 95 -altp -tfs 11 -nfs 115 -cellw 88% -T

一键环境切换

anaconda 作为一个 Python 环境管理工具,可以为我们创建及管理所需的各种 Python 环境,但是传统的 Jupyter 中每次启动只能使用指定的一个环境, 需要切换环境的话需要重启 notebooks server, 非常不方便。下面通过安装 ipykernel 扩展来完成一键切换。

首先假定 conda 中已经有了两个不同的环境,非别是 tf 和 PyTorch, 命令如下:

1
2
3
4
5
6
7
8
9
10
11
# 首先关闭已开启的 Jupyter Notebook server
# 激活其中一个环境
conda activate tf
# 安装 IPython Kernel
pip install ipykernel
# 创建链接 Jupyter
python -m ipykernel install --user --name=tf
# 激活另一个环境
conda activate PyTorch
pip install ipykernel
python -m ipykernel install --user --name=PyTorch

此时,打开 jupyter Notebook, 你就可以看到切换的选项了。 如下:20190801162609.png

扩展插件

为了实现更多有效的扩展特性,需要安装 nbextensions for Jupyter Notebooks

安装命令如下:

1
2
3
4
5
6
# 激活环境
conda activate base
# Install the nbextensions
pip install jupyter_contrib_nbextensions
# Install the necessary JS and CSS files
jupyter contrib nbextension install --system

此时再次再开 Jupyter Notebook server 就可以看到一个 Nbextensions 选项菜单, 如下是扩展插件列表。20190801162957.png

下面推荐几个好用的插件:

  • Table of Contents(2):更容易导航20190801163933.png

  • Scratchpad:代码实验田,不影响主代码运行

  • Codefolding

  • Hide Input All

  • Variable Inspector

  • Spellchecker

  • Zenmode

  • Snippets Menu

  • 代码段

  • 运行实验

点击上述每个插件名字,在 extension 页面有详细说明和动图截图说明, 这里不在赘述了。

Conclusion

如果你不喜欢暗色主题,在命令行中输入 jt -r 即可恢复到正常状态(或许你需要清理浏览器缓存)。

折腾的愉快。

泡面一杯