配置Jupyter环境:安装+补全+美化+常用库

2,769 阅读3分钟

1 Jupyter简介

Jupyter Notebook是一个交互式笔记本,支持运行40多种编程语言,本质是一个Web应用程序,便于创建和共享文学化程序文档,支持实时代码,数学方程,可视化和Markdown

2 安装

使用pippip3安装:

# sudo pip install jupyter
sudo pip3 install jupyter

3 简单自定义设置

首先生成默认配置:

jupyter notebook --generate-config

接着会提示默认配置的位置,打开,找到c.NotebookApp.notebook.dir=''可以修改默认目录:

在这里插入图片描述

注意需要加上u前缀,表示Unicode字符串。

c.NotebookApp.browser可以修改默认浏览器,比如修改为Chrome

在这里插入图片描述

需要加上%s参数,路径修改为对应路径。

其余配置请配合注释直接修改。

4 补全

补全需要安装nbextensions以及nbextensions_configurator

sudo pip3 install jupyter_contrib_nbextensions jupyter_nbextensions_configurator
# sudo pip install jupyter_contrib_nbextensions jupyter_nbextensions_configurator
jupyter contrib nbextension install --user
jupyter nbextensions_configurator enable --user

若依赖缺失请安装对应依赖,安装成功后打开Jupyter

jupyter notebook

进入Nbextensions选项卡,去掉disable xxx的那个勾选,选择Hinterland即可:

在这里插入图片描述

5 美化

默认的UI真的不忍直视,在Github上有一个jupyter-themes的工具,可以对其进行美化。首先使用pip3/pip安装:

sudo pip3 install jupyterthemes

5.1 主题

安装完成后,使用

jt -l

查看主题,携带的主题有7个:

  • onedork
  • grade3
  • oceans16
  • chesterish
  • monokai
  • solarizedl
  • solarizedd

使用-t切换主题,比如:

jt -t chesterish

5.2 字体

支持以下三种自定义字体:

  • 代码字体:-f
  • Notebook字体(界面字体):-nf
  • 普通文本/Markdown字体:-tf

其中代码字体(-f)支持如下:

在这里插入图片描述

Notebook字体(-nf)/普通文本字体(-tf)/Markdown字体(-tf)支持如下:

在这里插入图片描述

支持以下六种自定义字体大小:

  • 代码字体大小:-fs,默认11
  • Notebook字体大小:-nfs,默认13
  • 普通文本/Markdown字体大小:-tfs,默认13
  • Pandas Dataframs字体大小:-dfs,默认9
  • 输出区域字体大小:-ofs,默认8.5
  • Mathjax字体大小:-mathfs,百分比,默认100%

比如笔者喜欢Firacode字体,并且需要放大输出区域的字体,可以如下设置:

jt -t chesterish -f firacode -fs 14 -ofs 12

5.3 Cell宽度与行距

可以手动控制Cell的宽度以及代码的行距,-cellw控制宽度(默认980),-lineh控制行距(默认170)。

jt -cellw 1800 -lineh 200

5.4 UI元素显示

  • 工具栏显隐:-T
  • 名称与Logo显隐:-N
  • 内核Logo显隐:-kl

5.5 绘图风格

使用如下语句设置(需要在Jupyter内):

from jupyterthemes import jtplot
jtplot.style()

其中style()的参数如下:

  • theme:字符串类型,主题,可选值与jt -l显示一致
  • context:字符串类型,取值papernotebooktalkposter
  • grid:布尔类型,表示是否包含网格线
  • gridlines:字符串类型,表示网格线的风格,比如--表示虚线
  • ticks:布尔类型,表示x/y轴上的坐标标线的显隐
  • spines:布尔类型,表示图像四周是否显示包围框
  • fscalefloat类型,表示缩放字体,图例等等
  • figsize:元组类型,表示默认的Matplotlib图像的大小

笔者的参考配置:

jt -t chesterish -f firacode -fs 14 -ofs 12 -cellw 1500 -lineh 200 -T

6 常用库安装

使用pip+离线方式安装,首先需要知道系统架构,可以使用:

arch
uname -m

等方式查看,比如笔者的是x86_64戳这里进入下载,常用库列表如下:

  • Numpy
  • Scipy
  • Scikit-learn
  • Scikit-image
  • Spark MLLib(叫作PySpark)
  • Theano
  • TensorFlow
  • PyTorch
  • Pandas
  • Matplotlib

下面以numpy进行演示安装,搜索后点击第一个:

在这里插入图片描述

在这里插入图片描述

根据Python版本,系统以及架构选择对应的包,下载:

在这里插入图片描述

使用pip3pip安装即可:

在这里插入图片描述

其余库安装类似,若缺失依赖请先安装依赖。