对全世界的 Python 高手而言,Jupyter Notebook 是目前最流行的编程环境,尤其是对那些从事机器学习和数据科学的人而言。数月前我第一次开始认真研究机器学习时发现了 Jupyter Notebook。刚开始,我因这一切可以在我的浏览器中运行而感到惊讶和开心。但是,不久后我就失望了,老套的 Jupyter Notebook 的界面非常基础,缺乏很多有用的功能。那时候我就决定去寻找一些 Jupyter Notebook 的黑客技术。
在这篇文章中,我展示了一些 Jupyter Notebook 的附件/扩展,以及一些能够增强 Jupyter Notebook 和提高生产力的命令。简言之,就是要增强你的 Jupyter Notebook。
如果你按照下面的指示去做,你的 Jupyter Notebook 会拥有下面这些令人惊叹的功能(如果你愿意,还能获得更多):
是时候增强我们的 jupyter notebook 了!
炫酷的深蓝午夜主题
首先,要保证我们的 notebook 有一个漂亮的黑色主题,这样我们的眼睛就会舒服一些。如果你每天要工作很长时间,那固有的白色背景会让你眼睛很难受。无论如何,一旦你换成了黑色,就永远不会想换回来。
使用下面的命令安装黑色的主题,
# 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
主题包安装和更新好之后,运行下面的命令,将原来白色主题的 Jupyter Notebook 换成一款深蓝午夜主题。你的眼睛会喜欢这款主题的。
# Enable Dark Mode
jt -t onedork -fs 95 -altp -tfs 11 -nfs 115 -cellw 88% -T
Conda 环境自由切换
接下来,看一下我们是否已经把 Anaconda 中创建的所有定制环境作为核心添加在了 Jupyter Notebook 中。这样我们就能简单地利用 Kernel 按钮切换环境。换核的时候不需要重启 notebook。
假设你的 Anaconda 环中有两个自定义的环境 my_NLP 和 gym。按照下面的步骤将这些添加到你的 Jupyter Notebook 中。
# Stop and exit your Jupyter Notebook server first
# Activate your environment in the terminal
conda activate my_NLP
# Install the IPython Kernel
pip install ipykernel
# Link your environment with Jupyter
python -m ipykernel install --user --name=my_NLP# Repeat steps for the other environment, gym.
conda activate gym
pip install ipykernel
python -m ipykernel install --user --name=gym
现在打开你的 Jupyter Notebook,找到 kernel 按钮下的 Change Kernel 选项,接下来就是见证奇迹的时刻:所有的核都被列举出来了,你可以通过简单地点击来激活一个服务核。
这便是最新添加的 Kernel 的展现形式。请注意这款舒缓的午夜蓝主题。
其他炫酷功能
关于我在上面提及的其他炫酷功能,需要安装一些叫做 nbextensions for Jupyter Notebooks 的东西。
安装地址:https://jupyter-contrib-nbextensions.readthedocs.io/en/latest/install.html
安装 nbextensions 是很容易的,简单地遵循下面的步骤就行:
# Stop and exit your Jupyter Notebook server
# Make sure you are in the base environment
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 服务,你可以在起始页看到第四个叫做 Nbextensions 的选项。点击这个选项,然后就可以看到极妙的功能集,这些都是你一直希望在 Jupyter Notebooks 中拥有的。
Nbextensions 标签!
正如你在上面看到的,这个扩展列表十分庞大,甚至第一眼看上去有些吓人。但并不是所有的都有用,下面是我用到的一些功能:
上述列表包含了我常用的扩展功能,但是我鼓励你去尝试一下其余的扩展功能。一些有意思的功能包括 ScrollDown、table_beautifier 以及 Hinterland。
Snippet 扩展和 Table of Contents generation 扩展在工作中同时使用。
Scratchpad 扩展