配置Jupyter环境:安装+补全+美化+常用库
1 Jupyter简介
Jupyter Notebook是一个交互式笔记本,支持运行40多种编程语言,本质是一个Web应用程序,便于创建和共享文学化程序文档,支持实时代码,数学方程,可视化和Markdown。
2 安装
使用pip或pip3安装:
# 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:字符串类型,取值paper,notebook,talk,postergrid:布尔类型,表示是否包含网格线gridlines:字符串类型,表示网格线的风格,比如--表示虚线ticks:布尔类型,表示x/y轴上的坐标标线的显隐spines:布尔类型,表示图像四周是否显示包围框fscale:float类型,表示缩放字体,图例等等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版本,系统以及架构选择对应的包,下载:

使用pip3或pip安装即可:

其余库安装类似,若缺失依赖请先安装依赖。
配置Jupyter环境:安装+补全+美化+常用库的更多相关文章
- 环境配置 jupyter代码自动补全
自动补全 参考链接: https://www.lefer.cn/posts/15473/
- Java基础-配置开发环境-安装JDK
Java基础-配置开发环境-安装JDK 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.计算机基础知识 1>.计算机的组成 计算机有硬件与软件组成. 2>.硬件: 硬 ...
- Jupyter Notebook自动补全
大多数程序员都非常熟悉不同的自动补全工具.然而,我注意到许多数据科学家还没有使用它.如果你是他们中的一员,是时候开始使用这个提高效率的工具了 什么是自动补全? 它是你的编程环境提供的一种功能,用于完成 ...
- 配置开发环境&安装sklearn
我的开发环境是Jupyter lab,所用的库和版本大家参考: Python 3.7.1(你的版本至少要3.4以上) Scikit-learn 0.20.0 (你的版本至少要0.19) Graphvi ...
- Jupyter notebook 自动补全
Jupyter notebook 自动补全 Jupyter notebook使用默认的自动补全是关掉的.要打开自动补全,需修改默认配置. ipython profile create 以上命令会 ...
- purcell的emacs配置中的自动补全功能开启
标记一下,原文参看purcell的emacs配置中的自动补全功能开启 修改init-auto-complete.el文件 ;;(setq-default ac-expand-on-auto-compl ...
- Linux --- vim 安装、支持python3的配置、插件自动补全YCM的安装配置及全过程错误总结
1.git(用来下载vim和相关插件) sudo apt-get install git 2,cmake(用来编译clang-llvm) sudo apt-get install build-esse ...
- jupyter notebook自动补全功能实现
Jupyter notebook使用默认的自动补全是关掉的.要打开自动补全,需修改默认配置. 命令行中输入:ipython profile create 以上命令会在~/.ipython/profil ...
- Learning Lua Programming (3) iMac下搭建Lua脚本最好的编码环境(代码补全,编译运行)
这篇文章参考自http://blog.sina.com.cn/s/blog_991afe570101rdgf.html,十分感谢原作者的伟大创造,本人亲测可行. 这篇文章记录一下如何在MAC系统环境下 ...
随机推荐
- linux驱动系列之程序反汇编
摘抄网页:http://www.169it.com/article/330129798173630299.html 参考网页:http://www.cppblog.com/liu1061/articl ...
- ============================================ 新的开始(前后端分离项目学习Vue+DRF)
- 微信小程序中input标签高度设置
如果没有设置高度所以显示的是控件自身的高度. 微信小程序input控件原始设置: 上图发现: 我只覆盖了官方input的height,而没有覆盖min-height; .query input{ bo ...
- Java基础语法:注释
书写注释是一个非常好的习惯. 注释并不会被执行,是给我们写代码的人看的. Java中的注释有三种: 单行注释(Line comment) 多行注释(Block comment) 文档注释(JavaDo ...
- Dubbo之高级特性
Dubbo 注意当启动服务时,该服务会占用本机一个端口号,故在一台电脑启动多个服务时需要在配置文件中更占用本机的端口号 <!--服务占用本机的端口-当本机启动多个服务时须保持不同--> & ...
- 【HTB系列】靶机Querier的渗透测试
出品|MS08067实验室(www.ms08067.com) 本文作者:大方子(Ms08067实验室核心成员) 总结与反思: 1.收集信息要全面 2.用snmp-check检查snmp目标是否开启服务 ...
- 破解MySQL库user表hash密码
目录 得到用户名和密码 hash 带*和不带*的区别 破解hash 在线工具 Hashcat 实验环境 select version(); 得到用户名和密码 hash mysql安装好就会默认生成图中 ...
- 记离线部署docker,以及docker下部署zabbix
一.离线安装docker 下载地址:https://download.docker.com/linux/static/stable/x86_64/ 上传软件并解压 [root@localhost op ...
- dubbo实战之四:管理控制台dubbo-admin
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- @MockBean 注解后 bean成员对象为 null?
笔者在写自测的时候遇到的问题: 我想模拟一个Bean,并在之后使用Mockito打桩,于是使用了 @MockBean 注解(spring集成mockito的产物),但代码编写好了后启动测试却报Null ...