内容简介:目录JupyterLab 是 Jupyter 团队为 Jupyter 项目开发的下一代基于 Web 的界面。相对于 Jupyter Notebook,它的集成性更强,更灵活并且更易扩展。它支持如果说 Jupyter Notebook 像是一个交互式的笔记本,那么 Jupyter Lab 更像是一个交互式的 VSCode。另外,JupyterLab 非常强大的一点是,你可以将它部署在云服务器,不管是电脑、平板还是手机,都只需一个浏览器,即可远程访问使用。
Jupyter is not just a tool, it powers the whole innovation of the world.
目录
-
简介
-
先尝为敬
-
介绍
-
类型
-
Notebook 基本功能
-
%matplotlib
-
%timeit
-
%run
-
Cell 类型
-
自自动补全
-
问号查看详细⽂文档
-
Magic Code
-
快捷键
-
制作 PPT
-
JupyterLab 独有的实⽤用功能
-
灵活多窗⼝口视图
-
展开和收缩Cell
-
拖拽 Cell
-
主题
-
支持多种类型⽂文件
-
插件
-
Awesome jupyterlab extension list Github Extenion
-
Jupyter Git
-
Jupyterlab-toc
-
Jupyterlab-drawio
-
Jupyterlab_voyager
-
安装其他语⾔言的 Kernel
-
安装 R Kernel
-
安装 Julia Kernel Notebook
-
资源推荐
-
总结
简介
JupyterLab 是 Jupyter 团队为 Jupyter 项目开发的下一代基于 Web 的界面。相对于 Jupyter Notebook,它的集成性更强,更灵活并且更易扩展。它支持 100种多种语言 [2] ,支持多种文档相互集成,实现了交互式计算的新工作流程 ^1 [3] 。
如果说 Jupyter Notebook 像是一个交互式的笔记本,那么 Jupyter Lab 更像是一个交互式的 VSCode。另外,JupyterLab 非常强大的一点是,你可以将它部署在云服务器,不管是电脑、平板还是手机,都只需一个浏览器,即可远程访问使用。
使用 JupyterLab,你可以进行数据分析相关的工作,可以进行交互式编程,可以学习社区中丰富的 Notebook 资料。
在 GitHub上有超过170万个公共 Jupyter Notebook [4] 。 例如官方 "A gallery of interesting Jupyter Notebooks" [5] 中列举了如下主题的各类 Notebook:
• 编程与计算机科学 • 统计学,机器学习和数据科学 • 数学,物理,化学,生物学 • 地球科学和地理空间数据 • 语言学与文本挖掘 • 心理学和神经科学 • 机器学习,统计和概率 • 物理,化学和生物学 • 经济与金融 • 地球科学和地理空间数据
如果你是教授者,你还可以使用它进行教学,例如,可以通过安装插件,自动化检查学生的代码结果。你可以阅读这本书获取更多建议和信息: 《Teaching and Learning with Jupyter》 [6] 。
总之,无论你是什么专业,无论你是做什么领域,无论你是之前使用过 Jupyter Notebook,还是完全没有接触过。从现在开始,使用 JupyterLab 这一得心应手的工具,都可以提升你的工作效率,让你的体验更加美好。
Note: 阅读本文最佳方式是 打开电脑,实际的动手试一试这些功能 。
先尝为敬
在安装之前,你可以直接在 Binder 中尝试使用 JupyterLab [7] 。
或者查看一些 Notebooks:https://nbviewer.jupyter.org
安装
安装十分简易,可以通过 conda, pip, 或者 pipenv 进行 安装 [8] 。
# conda
conda install -c conda-forge jupyterlab
# pip
pip install jupyterlab
# pipenv
pipenv install jupyterlab
pipenv shell
个人推荐使用 Conda 的方式安装。
启动
进入到你想要使用 JupyterLab 的目录下,执行命令:
Jupyter lab
即可启动。
Token 的用途是确认身份,在你打开新标签时需要输入。
介绍
界面:
其中,左边栏(command + B)从上到下默认包含:
• 文件浏览器 • 正在运行的 kernel 列表
• 可以批量关闭 kernel
• 命令板 (command/ctrl + shift + C)
• • Cell 工具和已经打开的标签页
类型
JupyterLab 中有如下的 block 类型 [9] :
• Notebooks 笔记本,同Jupyter Notebook • File browser 文件浏览器 • Terminal 终端 • Text Editor 文件编辑器 • Kernels 内核 • Output 输出
Notebook 基本功能
JupyterLab 中的 Notebook 和 Jupyter Notebook 中的使用方法一样。
Cell 类型
每一个 Notebook 就是一个kernel,在其中可以包含多个 cell。
Cell 的类型有三种,分别为: markdown,code 和 row 。
运行 cell 的快捷键是:shift + command,大概会你用到最多次的一个快捷键。
选择 cell 之后,点击空白处,按下m键,代表转为markdown cell,y键代表转为code cell,同理r键代表转为row cell。
快捷键忘记了也没有关系,去命令板查一下就行:
自动补全
与大多数本地 IDE 相同,输入部分代码之后按 tab 键,即可自动补全。Jupyter Lab 中的自动补全显示比之前 Jupyter Notebook 的要友好,通过不同的颜色和图标。显示出了补全的类型。
问号查看详细文档
在函数或变量等后面添加一个问号(?),执行之后,即可查看对应的详细文档:
使用两个问号(??),会显示详细源代码信息:
Magic Code
IPython的一些特殊命令(不是内置于 Python 本身)被称为“魔术”命令。魔术命令是以百分号%为前缀的任何命令。
%matplotlib
最常用的魔法命令,大概就是 %matplotlib [10] 了。它用于指定 matplotlib 的后端(backend)。通常我们使用:
%matplotlib inline
代表使用 inline作为后端,直接在 Notebook 中内嵌图片,并且可以省略掉 plt.show() 这一步骤。
%timeit
%timeit 函数检查任何 Python 语句的执行时间,例如:
run
你可以使用 %run 命令,在Notebook中运行任意的Python文件。例如:
%run add.py
还有其他一些常用命令,例如 %debug、%load_ext 和 %pwd,完整命令可以 参考页面 [11] 。
快捷键
熟悉使用快捷键可以有效的帮我们提升效率,下面表格是一些常用快捷键的汇总图,可以先浏览一遍,看看自己经常会用的是什么:
格来源以及下载地址 [12] :https://blog.ja-ke.tech/2019/01/20/jupyterlab-shortcuts.html
你也可以直接在设置中查看或修改相应的快捷键。
制作 PPT
你还可以直接通过 Notebook 制作 一份网页版的 PPT,如果你的演示文稿中包含大量的代码,这将是一个不错的选择。
操作如下 [13] :
1. 打开一个 NoteBook,例如 Presentation.ipynb
2. 选择左侧的 Cell Tool 标签页 3. 选择需要展示的 Cell,设置其类型为Slide
4. 转化并运行 Presentation.ipynb: jupyter nbconvert Presentation.ipynb --to slides --post serve
一个PPT就制作完成啦,显示效果如下:
此外,如想要回到原来的Jupyter Notebook 也是可以的,只需要将链接后面的 Lab 改为 Tree。
如下:
JupyterLab 独有的实用功能
灵活多窗口视图
如果你使用VSCode这样强大的IDE,Jupyter Notebook 中最不令人满意的一点,就是它只支持单一的文件视图。如果你想要在一个页面上,同时使用Notebook和终端,或者想要再右侧预览markdown文件,Notebook都没有支持。但是,Jupyter Lab 具有灵活的窗口视图功能,使得上述需求能够实现。
通过拖拽的方式,可以自由的添加视图:
可以将输出的图片作为单独窗口查看:
于 markdown 文件,可以点击右键显示菜单,选择预览进行查看。
另外一个独特的功能是,你可以执行文本中的代码块。
例如,在markdown文档中,有一段Python代码,可以右击,在菜单中选择新建一个console。点击代码片段任意位置之后执行(Shift+Center):
展开和收缩Cell
我们注意到每一个Cell和Output左边都有一个蓝色的线,点击该蓝线,可以收拢或者展开,如果输出内容很多或者我们暂时不关心一些cell的内容时,就可以将其收拢起来。
拖拽 Cell
JupyterLab 非常灵活的第一点是,每一个Cell都是可以拖拽的,你不仅仅可以在单个文件内进行拖拽,还是在文件间进行拖拽,它会自从复制cell都另一个文件中。
主题
JupyterLab 自带黑白两种主题,和多种文本高亮主题。在设置菜单下即可设置主题。我们也可以更加自己的喜好,更换其他的主题。
支持多种类型文件
Jupyter Lab 对不同类型的文件支持也很完善。例如 JSON 文件,csv 文件和图片文件。
插件
通 VSCode一样,JupyterLab 也可以安装各类插件(extensions)。安装合适的插件,能够使你的效率提高很多。
JupyterLab 的插件是 npm 安装包。所以按照 JupyterLab 的插件,需要提前按照好 Node.js。
安装命令:
conda install -c conda-forge nodejs
或者 (Mac Only):
brew install node
完成之后,有两种方式进行插件的安装:
1. 通过开启 Extension Manager 来安装和管理插件 2. 通过执行命令的方式安装。
如果使用第一种方式,需要手动的开启 Extension Manager: 在设置中选择高级设置 (command+逗号 ),再选择Extension Manager一栏,修改设置为 true:
{
"enabled": true
}
设置成功之后,即可在走侧边栏中看到插件选项卡,可以查看已经按照的插件和探索其他未安装的插件。
Awesome jupyterlab extension list
目前,社区中,已经有很多优秀的插件可以使用,如果你自己一个个的去检索寻找非常麻烦,所以 我建立了一个目前最完整的实用列表:https://github.com/Yogayu/awesome-jupyterlab-extension。 列表中,包含简单的介绍,还有插件的效果展示图。因此,你能很方便的索引到自己需要的插件。
在本文中,重点介绍一些常用的插件。
Github Extenion
安装命令:
jupyter labextension install @jupyterlab/github
该扩展,会在左侧区域添加一个 Github 浏览器选项卡。你可以浏览 GitHub 上的内容,仓库等等。也可以直接打开仓库中 JupyterLab 支持的文件。如果文件是 Notebook 类型,你直接直接运行,无需下载到本地,非常的方便。
输入 GitHub 用户名,即可查看其下所有仓库内容。
直接打开 Notebook 文件,即可在本地查看和运行远程 Notebook:
Jupyter Git
Jupyter Git 是 JupyterLab 中的 Git图形化管理工具。安装之后,可以在 git标签页,查看对应的文件修改情况和版本历史等信息。类似于VSCode的Git管理工具。( 是的,我们的 JupyterLab 越来越像 VSCode 了 : )
安装命令:
jupyter labextension install @jupyterlab/git
pip install jupyterlab-git
jupyter serverextension enable --py jupyterlab_git
使用:
Jupyterlab-toc
顾名思义,该插件可以自动生成文件内容目录。
安装命令:
jupyter labextension install @jupyterlab/toc
成功之后,即可以点击目录标签页,查看文档目录:
Jupyterlab-drawio
Jupyterlab-drawio 是一个在绘图插件,它将drawio / mxgraph独立集成到了 jupyterlab 中。
安装命令:
jupyter labextension install jupyterlab-drawio
安装成功之后,在启动面板即可以选择 Diagram 类型文件。
Jupyterlab_voyager
Voyager是一种数据可视化工具,可以自动和手动的生成图表。用来查看数据的基本分布信息,十分方便。
安装命令:
jupyter labextension install jupyterlab_voyager
安装之后,选择CSV或者JSON文件,右击选择 open with voyager,即可使用:
安装其他语言的 Kernel
前面我们说到 JupyterLab 支持多种语言,所以我们只需在 https://github.com/jupyter/jupyter/wiki/Jupyter-kernels 列表上找对对应的语言,安装其 Kernel 就可以使用。
这里我们以 R 和 Julia 为例。
安装 R Kernel
安装文档: https://irkernel.github.io
1. 安装 R 下载地址:https://cran.r-project.org/mirrors.html 清华大学镜像源:https://mirrors.tuna.tsinghua.edu.cn/CRAN/ 2. 在终端中运行 R, 运行命令:
The packages (' IRkernel)
IRkernel: : installspec ()
1. 或者直接使用 conda install -c r r-essentials 安装一些必备的包。
安装 Julia Kernel
安装文档: https://github.com/JuliaLang/IJulia.jl
1. 安装 Julia [14] 2. 打开 Julia 之后,运行命令
using Pkg
Pkg.add("IJulia")
完成之后即可在 JupyterLab 中新建对应语言的Notebook。
如果想要在同一个Notebook中运行不同的语言,可以参考项目: sos-notebook [15] 。
Notebook 资源推荐
• 首推官方资源列表 [16] :https://github.com/jupyter/jupyter/wiki/A-gallery-of-interesting-Jupyter-Notebooks
最后,特别推荐一些书籍和课程的 Notebook:
• The Python Data Science HandBook [17] : https://github.com/jakevdp/PythonDataScienceHandbook • Hands-on the Machine Learning with Scikit-Learn and TensorFlow [18] : https://github.com/ageron/handson-ml • the Deep Learning with Python [19] : https://github.com/fchollet/deep-learning-with-python-notebooks • UC Berkeley Data 100 [20] : https://github.com/DS-100/textbook
还有很多很多其他有趣的 Notebook,就等大家自己去探索,或者你可以自己写一个系列啦。
总结
最后,一起来回顾下本文内容吧:
看完之后,是不是觉得 JupyterLab 可以成为你的主力数据分析 IDE 了呢?
References
[1]
ENGLISH VERSION: http: /data2art.com/jupyterlab-en.html
[2]
100种多种语言: https://github.com/jupyter/jupyter/wiki/Jupyter-kernels
[3]
^1: https://blog.jupyter.org/jupyterlab-is-ready-for-users-5a6f039b8906
[4]
^1: https://blog.jupyter.org/jupyterlab-is-ready-for-users-5a6f039b8906
[5]
"A gallery of interesting Jupyter Notebooks": https://github.com/jupyter/jupyter/wiki/A-gallery-of-interesting-Jupyter-Notebooks
[6]
《Teaching and Learning with Jupyter》: https://jupyter4edu.github.io/jupyter-edu-book/
[7]
JupyterLab: https://jupyter.org/try
[8]
安装: https://jupyterlab.readthedocs.io/en/stable/getting_started/installation.html
[9]
block 类型: https://github.com/jupyterlab/jupyterlab-demo/tree/master/slides
[10]
%matplotlib: https://ipython.readthedocs.io/en/stable/interactive/plotting.html
[11]
参考页面: https://ipython.readthedocs.io/en/stable/interactive/magics.html
[12]
表格来源以及下载地址: https://blog.ja-ke.tech/2019/01/20/jupyterlab-shortcuts.html
[13]
操作如下: https://github.com/jupyterlab/jupyterlab/issues/5018#issuecomment-485842330
[14]
安装 Julia: https://julialang.org/downloads/
[15]
sos-notebook: https://vatlab.github.io/blog/post/sos-notebook/
[16]
首推官方资源列表: https://github.com/jupyter/jupyter/wiki/A-gallery-of-interesting-Jupyter-Notebooks
[17]
The Python Data Science Handbook: https://github.com/jakevdp/PythonDataScienceHandbook
[18]
Hands-on the Machine Learning with Scikit-Learn and TensorFlow: https://github.com/ageron/handson-ml
[19]
the Deep Learning with Python: https://github.com/fchollet/deep-learning-with-python-notebooks
[20]
UC Berkeley Data 100: https://github.com/DS-100/textbook
据说点 「好看」 的人都变好看了 :point_down:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 新媒体运营必备11款数据分析工具
- 高薪必备的6款数据分析工具 | 深度测评
- 年薪20W+的数据科学家有哪些必备技能?先从Python数据分析开始!
- 线下课程|从十七年产品管理经验中,我们能学到哪些产品总监必备的数据分析知识
- 前端开发必备工具
- go语言开发必备
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
iOS软件开发揭密
虞斌 / 电子工业出版社 / 2011-5-1 / 79.00元
本书以严密的体系性提供了iPhone和iPad软件开发从入门到专家的系统性知识,并提供来源于真实项目的可重用商业代码。书中的每个实例都是项目经验的提炼,深入浅出地讲解iPhone和iPad软件开发的核心技术要点,基本涵盖了iOS软件开发在真实商业项目中所需要的所有主题,并将实例介绍的技术深度和超值的实用性结合在一起,成为本书的特色。 随书附赠的光盘中包含了书中大量案例的完整工程源代码,可以让......一起来看看 《iOS软件开发揭密》 这本书的介绍吧!