upyterlab是jupyter notebook的下一代产品,集成了更多功能。目前开发到0.32.1版本,已经可以使用而且非常强大,据官网说法,当1.0.0版本出来之时,就会取代jupyter notebook。
本文主要介绍jupyterlab相比于jupyter notebook更加高效的功能及配置。
jupyterlab安装
如果有conda的话,可以在命令行使用下面这条命令安装
conda install -c conda-forge jupyterlab
如果有pip的话可以这样安装
pip install jupyterlab
更多安装方法请见官网
安装后只需要在命令行中输入
jupyter lab
即自动用浏览器打开。
jupyterlab基本功能
jupyterlab的基本界面是这样的(图片来自官网)
它的编辑界面和jupyter notebook几乎没有区别,jupyter notebook支持的功能、快捷键在这里也都支持。jupyterlab的优势在于它增加了许多组件和更便捷的操作。
下面我们来看一些jupyterlab独有的功能
1.同一个文档打开至多个窗口
很多时候,写代码时要参考之前的代码或者结果,而jupyter notebook中间cell的代码和输出结果经常让我们只能拖动滚动条回去看,非常麻烦。而jupyterlab则提供了一个文档在多个窗口显示的功能,仅这一个功能就足以诱惑我从jupyter notebook上转到这里来。
如上图,只需要右键上面标签,选择New View for Notebook
,即可新建一个相同的标签。然后使用鼠标拖动标签,如下图所示
即可达到下面的效果
这时只对一个文档进行修改另一个会马上同步,而且两个文档的内容显示可以停留在任意位置互不干扰。当只需要一个文档时,不需要保存,直接关掉另外一个即可。
如果觉得截图不够清晰,可以看官网上的视频Create multiple synchronized views of a single notebook
部分
2.手动拖拽cell
不仅可以在同一个文件中拖拽到指定位置,而且可以拖拽到其他文件之中,也支持一次拖拽多个cells。
3.输出结果单独窗口显示
选中cell右键-create new view for output,即可将结果显示在新的窗口中,如下图所示
如果后面写的代码要基于之前输出的某个结果或者某张图,这个功能是非常有用的,这个和第一个功能类似,但是只针对一个个输出结果。
4.清除输出结果
选中cell右键-clear output
有时程序输出了非常多的信息,这些信息没有用时需要把它删掉。在jupyter notebook中只能删掉整个cell,或者清空代码使用空白cell运行再把代码贴回来。而用jupyterlab则可以一键清空。
5.临时交互试验
在页面上右键-new console for notebook,可以打开一个ipython窗口,在这里编写程序按Shift + Enter
运行。
这个窗口可以直接调用这个文件中之前定义过的所有变量。在这个窗口中编写的代码是临时的、试验性质的,不会被加入到文档中,当测试结束,把这个界面关闭就好。它的作用在于,防止在正式文档中测试一些东西,产生一堆无用代码还要费力删除。即在不更改源文档的情况下试验一些代码。
更多功能
更多功能可以参考官方网站上的视频
jupyterlab使用技巧
这一部分旨在消除一些jupyterlab使用过程中不方便的地方
1.取消侧边栏
当打开多个窗口时,我们不希望显示如图蓝色区域。这时,蓝色区域对应的是最左侧的files选项卡(红色框位置),我们只需要再点击一下files(当前选中的)选项卡,就可以不显示左侧区域了。
2.去除input-output
当窗口打开非常多的时候,图中的红框部分就会显得很占空间,最好能把它去掉。只需要找到(windows下使用软件everything即可)anaconda3\share\jupyter\lab\themes\[@jupyterlab](https://link.zhihu.com/?target=https%3A//github.com/jupyterlab)\theme-light-extension
目录下的index.css
文件,在最后面加上
.jp-InputArea-prompt {
flex: none;
width: 10px;
text-indent: 100%;
}
刷新jupyterlab即可看到input-output都不见了
3.主题设置
目前jupyterlab只提供白色和黑色两种主题,通过setting-jupyterlab theme 查看更改
用jupyter notebook的人可能知道jupyter-theme项目提供了非常多优秀的主题,可惜这在jupyterlab上无法使用,jupyterlab的团队也正在开发更多主题,我们拭目以待!
如果实在想修改一些设置,也可以在之前提到的index.css
文件中直接修改,此时可以看官网开发者帮助文档部分。
4.为文件添加目录
只需要在命令行输入如下命令
jupyter labextension install jupyterlab-toc
再打开jupyterlab,可以发现有了contents选项,即每个文档都可以在这里找到目录