如何配置 Jupyter Notebook?

Pandas 百问百答第 005 篇。

  1. 如何在启动时指定目录?

  2. 如何安装扩展插件?

  3. 如何修改颜色主题?

  4. 如何让一个单元格显示多个输出?

  5. 如何不使用科学计数法显示数字?

  6. 如何添加与删除虚拟环境?

  7. 如何让 matplotlib 与 Seaborn 显示中文?

  8. 常用快捷键有哪些?

  9. 文末彩蛋,必看!!!

1. 如何在启动时指定目录?

指定启动目录可以减少很多切换目录的麻烦操作,呆鸟以前写过一篇《1 分钟修改 Jupyter 启动文件夹》,已经介绍过,不在此赘述了。

另外,还有文章介绍通过修改快捷方式指定启动目录,恕呆鸟愚钝,每次改完快捷方式都失效了,不知道哪里出的问题,感兴趣的朋友自己查下,试试看。

2. 如何安装扩展插件?

Notebook 有个很强大的扩展插件,好东西必须要安装。

安装插件的方式与上一篇介绍的一样,如果不知道怎么安装,请看《如何用 Anaconda 安装、升级、删除支持库?一文里第 3 个问题的答案,怎么安装 Anaconda 里没有的 Python 支持库?

jupyter_contrib_nbextensions

# 用 pip 安装,二选一
pip install jupyter_contrib_nbextensions

# 或用 conda 安装,二选一
conda install -c conda-forge jupyter_contrib_nbextensions

# 设置用户
jupyter contrib nbextension install --user

jupyter_nbextensions_configurator

# 用 pip 安装,二选一
pip install jupyter_nbextensions_configurator

# 或用 conda 安装 ,二选一
conda install -c conda-forge jupyter_nbextensions_configurator 

# 设置用户
jupyter contrib nbextension install --user

# 启用用户
jupyter nbextensions_configurator enable --user

运行 Jupyter 以后,在地址栏里输入 http://localhost:8888/nbextensions,直接进入插件界面:

注意:有时候安装完会发现插件点不了,如下图,这时要去掉红框里的√。

去掉√,以后就可以了。

推荐几个呆鸟常用的小功能:

  • Hinterland,代码自动补全

  • autopep8 ,对单元格里的代码自动排版
    要用 pip install autopep8 安装对应插件,不安装会提示出错;
    点击红框里的小锤子图标,应用 autopep8:

  • Execute Time,查看单元格的执行时间;

  • Table of Contents(2),自动目录,需要和 Markdown 配合,不懂 Markdown 的需要学习一下。

  • 点击图标 1,开关目录显示;

  • 点击图标 2,刷新目录;

  • 点击图标 3,设置目录,比如,是否标题前是否加数字序号。

  • Variable Inspector,显示变量数据。点击红框里的图标,打开变量查阅器窗口。

还有很多插件都很实用,自己慢慢研究吧。

循环进度条

  • 插件网址:https://tqdm.github.io/

  • 插件用途:数据分析有时要操作循环,但 Jupyter Notebook 没有显示监控的功能,tqdm 这个插件就是用来监控循环进度的,很实用。

  • 代码示例

from tqdm import tnrange, tqdm_notebook

%%time # 这个是计算操作时间的魔法命令
# 第一种方式
import numpy as np
from tqdm import tnrange, tqdm_notebook

a = []
for _ in tnrange(100,desc="第一个循环"):
    a.append(np.random.randn(1,1000))

# 第二种方式
import numpy as np
from tqdm import tnrange, tqdm_notebook
a = []
b = []
for _ in tqdm_notebook(range(1000),desc="第二个循环"):
    a.append(np.random.randn())
    b.append(np.random.randn())

3. 如何修改颜色主题?

不喜欢默认界面,或想换下口味,jupyter-themes 可以更改颜色主题。

  • 插件网址
    https://github.com/dunovank/jupyter-themes

  • 安装: pip install jupyterthemes

  • 参数说明

命令行选项说明
颜色选项参数默认值
查看帮助-h--
查看主题列表-l--
主题名称-t--
代码字体-f--
代码字号-fs11
Notebook 字体-nf--
Notebook 字号-nfs13
文本或 Markdown 单元格字体-tf--
文本或 Markdown 单元格字号-tfs13
Pandas DataFrame 字号-dfs9
输出内容字号-ofs8.5
Mathjax 字号 (%)-mathfs100
页边距-mauto
单元格宽-cellw980
单元格行高-lineh170
光标大小-cursw2
光标颜色-cursc--
Alt 命令布局-altp--
Alt Markdown 背景色-altmd--
Alt 输出背景色-altout--
Vim 风格扩展-vim--
工具栏是否可见-T--
Notebook 名称与标识是否可见-N--
内核标识是否可见-kl--
重置为默认主题-r--
强制使用默认字体-dfonts--
  • 应用示例
    在 Terminal 里设置主题:输入命令 jt -t grade3,jt 是 jupyter-themes 的简称,-t,就是上表里的主题名称对应的参数,grade3,是 jupyter-themes 内置的主题名称,下面列出了默认主题的示例,大家可以选择自己喜欢的。

  • 内置主题

  • grade3

  • gruvboxd

  • gruvboxl

  • chesterish

  • monokai

  • oceans16

  • onedork

  • solarizedd

  • solarizedl

除了默认主题,还可以把主题与其它参数搭配,下面推荐一个呆鸟喜欢的配置
jt -t onedork -f fira -fs 105 -ofs 95 -tfs 105 -nfs 115 -dfs 105 -N -T

下图是修改后的效果,喜欢深色主题的朋友可以试下,文字也更加饱满、清晰。

  • 恢复默认主题, 所有主题都不喜欢?用 jt -r 即可恢复还原默认主题。

4. 如何让一个单元格显示多个输出?

正常情况下, 一个单元格只显示一个输出结果;

执行下列代码以后,就可以显示多个代码了;

from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"

5. 如何不使用科学计数法显示数字?

{:,.2f} 代表显示的是两位小数。

pd.options.display.float_format = '{:,.2f}'.format

6. 如何添加与删除虚拟环境?

代码里的 virtualenv-name 要改为实际的虚拟环境名称,比如呆鸟用的虚拟环境就叫 Python3,见下图。

  • 安装:python -m ipykernel install --user --name=virtualenv-name

  • 查看:jupyter kernelspec list

  • 删除:jupyter kernelspec uninstall virtualenv-name

7. 如何让 matplotlib 与 Seaborn 显示中文?

默认情况下,matplotlib 与 Seaborn 不支持中文,要设置中文字体。

%matplotlib inline

# 设置 matplotlib 图形分辨率
plt.rcParams['figure.dpi'] = 150

# matplotlib 支持中文
plt.rcParams['font.sans-serif'] = ['SimHei']

# matplotlib 正常显示负号
plt.rcParams['axes.unicode_minus'] = False

# Seaborn 字体与字号设置
sns.set( font='SimHei', font_scale=1.2)

# MacOS:matplotlib 与 Seaborn 支持中文
plt.rcParams['font.family'] = ['Arial Unicode MS']
sns.set_style('whitegrid', {'font.sans-serif': ['Arial Unicode MS', 'Arial']})

8. 常用快捷键有哪些?

首先,要了解什么是编辑模式?什么是命令模式

红框里是绿色时,为编辑模式,在命令模式时按 Enter 会进入编辑模式;

红框里是蓝色时,为命令模式,在编辑模式时按 ESC 会进入命令模式;

通用模式(编辑模式与命令模式均可)快捷键:

  • 调出控制面板:Ctrl + Shift + P

  • 运行当前单元格,选中下方单元格:Shift + Enter

  • 运行当前单元格:Ctrl + Enter

  • 运行当前单元格,在下方插入新单元格:Alt + Enter

  • 保存 ipynb 文件:Ctrl + S

编辑模式快捷键

  • 切换为命令模式:ESC

  • 在光标处分割单元格:Ctrl + Shift + 减号

  • 光标挪至行首或行尾:Alt + ←或→

  • 按单词挪动光标:Ctrl + ←或→

  • 缩进:TAB

  • 取消缩进:Shift + TAB

  • 删除光标前的整个单词:Ctrl + Backspace

  • 删除光标后的整个单词:Ctrl + Delete

  • 显示函数提示:Shift + TAB,按一次显示简略信息,按两次显示详细信息,按三次 10 秒内固定显示,按四次,函数信息固定显示在界面下方。

  • 移动到上一个单元格:↑

  • 移动到下一个单元格:↓

  • 复制光标所在整行:Ctrl + C,注:不要选择任何内容

  • 剪切光标所在整行:Ctrl + X,注:不要选择任何内容

  • 其它复制、剪切、黏贴、重做、取消等快捷键与 Windows 标准快捷键一样。

命令模式快捷键

  • 切换为编辑模式:Enter

  • 选中单元格改为代码格式:Y

  • 选中单元格改为 Markdown 格式:M

  • 选中单元格改为原生格式:R

  • 当前单元格上方插入单元格:A

  • 当前单元格下方插入单元格:B

  • 删除选中单元格:DD,即连续按两次 D 键

  • 恢复删除的单元格:Z

  • 复制选中单元格:C

  • 剪切选中单元格:X

  • 黏贴选中单元格:V

  • 查找与替换内容:F

  • 隐藏 / 显示输出内容:O

  • 隐藏 / 显示代码行号:L

  • 扩展选择当前单元格上方单元格:Shift + ↑

  • 扩展选择当前单元格下方单元格:Shift + ↓

  • 合并多个单元格:Shift + M

  • 重启内核:00,即连续按两次

注:以上快捷键字母不分大小写

9. 文末彩蛋,必看!!!

呆鸟为大家精心编译了 Jupyter Notebook 速查表,详细介绍了 Jupyter Notebook 的界面功能,高清大图 PDF,请在【Python大咖谈】公号后台输入 notebook 获取下载地址

最后,有关 Jupyter Notebook 用法其实还有很多,比如魔法命令,但小白一般也用不上,就先不介绍了。

总的来说,Jupyter Notebook 比其它 IDE 要简单太多了,小白不至于为了 IDE 操作,就直接晕倒,因此,非常适合上手 Python 数据分析,等深入学习以后,再用那些高大上的 IDE,也为时不晚。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值