上手jupyter notebook神器

Posted 叶庭云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了上手jupyter notebook神器相关的知识,希望对你有一定的参考价值。

文章目录

一、简介

  • Jupyter Notebook是一个开源的 Web 应用,能够让你创建、分享包含可执行代码、可视化结构和文字说明的文档。
  • Jupyter Notebook的应用非常广泛,它可以用在数据清理与转换、数字模拟、统计模型、数据可视化、机器学习等方面。


Jupyter Notebook非常活跃于深度学习领域。在项目的实验测试阶段,它相比于用 py 文件来直接编程更方便一些。在项目结束之后如果要写项目报告,用 Jupyter 也比较合适。

二、安装与使用

Jupyter Notebook主要有以下三个非常实用的功能:执行代码、数据可视化以及使用 Markdown 功能写报告

  • 执行代码。一般是 Python 程序,也可以添加新的编程语言。

  • 数据可视化。如果我们经常在 Linux 环境编程开发,需要对数据可视化该怎么办呢?是不是只能把图片保存下来,然后下载到本地进行查看?使用 Jupyter Notebook 就不用多此一举,我们可以直接在页面中查看。如下图所示:

  • 使用 Markdown 功能写文档。这些文档中还包含了代码以及代码执行后的结果,非常有助于你书写项目报告。

1. 安装

  • 最简单的方法是通过安装 Anaconda 来使用 Jupyter Notebook & Lab。Anaconda已自动安装了 Jupter Notebook 及其他工具,还有 Python 中超过 180 个科学包及其依赖项。安装好 Anaconda 后进入 Anaconda Navigator,可以通过 Anaconda Navigator 启动 Juypter Notebook 或者 Jupyter Lab。

  • 使用 pip 安装与启动:

# 升级pip
pip install --user --upgrade pip -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
# 安装 Jupyter Notebook
pip install jupyter notebook -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
# 安装 Jupyter Lab
pip install jupyterlab -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

安装完成后,直接在终端执行 jupyter notebook 或 jupyter lab 命令启动。

2. 基本使用

以讲解 Jupyter Lab 的使用为例,Jupyter Lab是 Jupyter Notebook 的下一代产品,在使用方式上更为灵活、便捷。使用 Jupyter Lab 的内容同样适用于Jupyter Nobebook,它们只是工具的表现形式不一样而已。

我们在命令行或者 Anaconda Navigator 中启动 Jupyter Lab 之后,浏览器会自动打开如下所示的 Jupyter Lab 界面:

最左侧显示的是你启动时所在的目录,右侧是你可以使用的一些开发工具。

  • 点击 Notebook 的 “Python 3” 的图标之后,会自动新建一个 Notebook。
  • Jypter Lab 与 Jupyter Notebook 中都会用到这个叫作 Notebook 的编辑工具。
  • Jupyter Lab 与 Jupyter Notebook 的不同之处在于 IDE 的界面以及操作方式,这里讲解是以使用 Jupyter Lab 为例。
  • 一个 Notebook 的编辑界面主要由 4 个部分组成:菜单栏、工具栏、单元格(Cell)以及内核。如下图所示:

单元格(Cell):

  • Code 单元格:包含可以在内核运行的代码,并且在单元格下方输出运行结果。
  • Markdown 单元格:包含运用 Markdown 的文档,常用于文档的说明,也是可以运行的单元格。
  • 从 Code 单元格切换到 Markdown 单元格的切换的快捷键是m;从 Markdown 单元格切换到 Code 单元格的切换的快捷键是y
  • 切换之前需要先按 Esc,从单元格的编辑状态中退出。

在工具栏中也可以切换,但是还是快捷键方便些,如下图所示:

  • 我们可以通过上下键移动选中的单元格。移动到这一行,然后开始运行这个单元格。
  • 运行单独一个单元格的快捷键为:Ctrl+Enter,运行选中单元格并切换到下一个单元格的快捷键是Shift+Enter。
  • a 在单元格上方插入新的单元格;b 在单元格下方插入新的单元格;
  • x 删除单元格;z 撤销删除的单元格。

3. Magic 命令

Jupyter Notebook 的前身是 IPython Notebook,所以 Jupyter 也支持 IPython 的 Magic 命令。IPython 是一个比 Python 自带的 Shell 更加灵活方便的 Shell,它主要活跃于数据科学领域。

Magic 命令分两种:

  • Line Magics 命令:在命令前面加%,表示只在本行有效
  • Cell Magics 命令:在命令前面加%%,表示在整个 Cell 单元有效。

介绍几个常用的 Magic 命令

  • %lsmagic:用来查看可以使用的 Magic 命令

  • %matplotlib inline:可以在单元格下面直接打印出 matplotlib 绘制的图形,通常要在 matplotlib 模块引入之前使用;使用这个 Magic 命令之后,可以不用 plt.show()。

  • %pwd:查看当前的文件路径

  • %%writefile:写文件,%%writefile 后面紧跟着文件名,然后下面写文件的内容

  • %run: 运行一个文件,%run 后面跟着要运行的文件

比如我们先写一个 test_temp.py 的文件。运行单元格之后会在当前位置生成一个叫作 test_temp.py 的文件,然后使用 %run 来运行它

%load:加载文件。使用 %load + 文件名可以把指定的文件加载到单元格内

示例如下:

开发到某一阶段时,可能会发现之前的某些代码写错了,需要回过头重新编辑然后运行代码,这是一件很正常的事情。但这个时候你要注意,每个 Code 单元格是有执行顺序的,这个顺序就是每个单元格前面[]的数字。

如果你想全部重新执行的话,Kernal 菜单中的一些功能会帮到你。

  • Restart Kernel:重新启动内核,清除所有变量。
  • Restart Kernel and Clear All Outputs:重新启动内核,清除所有变量与输出。
  • Restart Kernel and Run up to Selected Cell:重启内核,运行选中的单元格。
  • Restart Kernel and Run All Cells:重启内核,运行所有单元格。

我们现在使用的是 Python 内核,其实 Jupyter 还支持很多其他的内核,如 Java、C、R 以及 Julia 等编程语言的内核。我们创建 Notebook 的时候就选择好了使用什么样的内核。

三、配置Notebook

1. 更改默认工作目录

想要修改 Jupyter Notebook 那些默认的配置选项,就需要在配置文件 jupyter_notebook_config.py 中修改相应配置选项的属性。这个配置文件一开始并不存在,需要手动生成,在命令行输入 jupyter notebook --generate-config 并执行,配置文件就创建好了,它的位置是在 C:\\Users\\Administrator.jupyter\\ 中。


然后根据路径去找配置文件:jupyter_notebook_config.py

一般情况下,jupyter的默认工作目录为C:\\Users\\Administrator\\,这样很不清爽,而且不便于管理项目,所以常需要在其他盘建立一个独立的jupyter工作目录文件。

现在用前面生成的配置文件jupyter_notebook_config.py,工作目录就在这个里面进行修改。

  • 用记事本打开配置文件jupyter_notebook_config.py
  • Crtl + F组合键,然后输入 c.NotebookApp.notebook_dir 查找到元素,删掉前面的注释#
  • 在后面的单引号里输入要设置的目录路径,保存关闭;例如:c.NotebookApp.notebook_dir = r’D:\\python\\jupyter_notebook’
  • 修改快捷键,在 win 开始菜单中搜索,找到 jupyter notebook 快捷图标,右击选择属性,删除目标值最后的 “%USERPROFILE%”,点击确定退出。

经过这四个步骤,工作目录就修改好了,这时候不管你是通过快捷键还是命令行进入jupyter notebook,都能看到最新设置的目录,干净清爽,之后写代码,在这个目录下创建文件即可,方便管理。

2. 更换皮肤主题

jupyter notebook默认的主题为白色背景,长期使用对眼睛不太友好,如果能够像 Pycharm 那样更换自己喜欢的主题,既能缓解视觉疲劳、保护视力,又能提升敲代码体验,岂不美哉!

Github上大神提供的包jupyterthemes:https://github.com/dunovank/jupyter-themes

jupyterthemes的安装

pip install jupyterthemes -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

命令行输入如指令查看主题

jt -l

结果如下:

Available Themes:
   chesterish
   grade3
   gruvboxd
   gruvboxl
   monokai
   oceans16
   onedork
   solarizedd
   solarizedl
 # 有很多主题可供使用呀

查看jupyter-theme的帮助手册

jt -h

结果如下:

可以看到,帮助里告诉了我们该如何使用命令以及参数设置。

jupyter-theme常用参数

更多详细的使用和字体设置参考文档:https://github.com/dunovank/jupyter-themes

jupyter-theme使用示例

jt -t monokai -f sourcemed -fs 12 -tf sourcemed -tfs 16 -nf code -nfs 13 -ofs 14

运行效果如下:

jt -t gruvboxl -f hack -fs 12 -tf sourcemed -tfs 16 -nf ptmono -nfs 13 -ofs 14

运行效果如下:

jt -t solarizedd -f sourcemed -fs 12 -tf sourcemed -tfs 16 -nf code -nfs 13 -ofs 14

运行效果如下:

jt -t chesterish -f sourcemed -fs 12 -tf sourcemed -tfs 16 -nf code -nfs 13 -ofs 14

运行效果如下:


更多风格可以自行调参数进行设置,当你又想变回原来的风格,使用如下命令:

# -*- coding: UTF-8 -*-
"""
@Author  :叶庭云
@公众号  :修炼Python
@CSDN    :https://yetingyun.blog.csdn.net/
"""
jt -r

运行效果如下:

以上是关于上手jupyter notebook神器的主要内容,如果未能解决你的问题,请参考以下文章

Jupyter notebook 使用上手

python笔记记录神器 jupyter notebook

怎么打开jupyter notebook?

jupyter notebook 更换路径

Jupyter notebook的正确打开方式

Jupyter Notebook使用