配置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
,poster
grid
:布尔类型,表示是否包含网格线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系统环境下 ...
随机推荐
- 1094 The Largest Generation ——PAT甲级真题
1094 The Largest Generation A family hierarchy is usually presented by a pedigree tree where all the ...
- 简单比较 @EnableEurekaClient 和 @EnableDiscoveryClient 两个注解
@EnableEurekaClient 和 @EnableDiscoveryClient 都是让eureka发现该服务并注册到eureka的注解 相同点: 它们都能让注册中心Eureka发现 , 并将 ...
- 关于电脑硬盘的二三事(SATA接口)
@ 目录 前言 接口分类 SATA3接口 机械硬盘 机械硬盘的特点和主要参数 西部数据机械盘分类 绿·蓝·黑盘 红盘 紫盘 金盘 希捷机械盘分类 酷狼 酷鱼 酷鹰 银河 SATA3接口的固态硬盘 固态 ...
- 后端程序员之路 59、go uiprogress
gosuri/uiprogress: A go library to render progress bars in terminal applicationshttps://github.com/g ...
- 后端程序员之路 28、一个轻量级HTTP Server的实现
提到http server,一般用到的都是Apache和nginx这样的成熟软件,但是,有的情况下,我们也许也会用一些非常轻量级的http server.http server的c++轻量级实现里,M ...
- 【pytest官方文档】解读fixtures - 2. fixtures的调用方式
既然fixtures是给执行测试做准备工作的,那么pytest如何知道哪些测试函数 或者 fixtures要用到哪一个fixtures呢? 说白了,就是fixtures的调用. 一.测试函数声明传参请 ...
- Java 面向对象 05
面向对象·五级 package关键字的概述及作用 * A:为什么要有包 * 将字节码(.class)进行分类存放 * 包其实就是文件夹 * B:包的概述 举例: ...
- ORM思想解析
ORM思想解析 qq_16055765 2019-01-10 11:29:08 1688 收藏 1 分类专栏: # hibernate 最后发布:2019-01-10 11:29:08首次发布:201 ...
- 【python+selenium的web自动化】- 8种元素定位方式详解
我们在做WEB自动化时,最根本的就是操作页面上的各种元素,而操作的基础便是元素的定位,只有准确地定位到唯一元素才能进行后续的自动化控制,下面将对各种元素定位方式进行总结归纳. 说明:以下操作统 ...
- FreeBSD 家图谱
https://cgit.freebsd.org/src/tree/share/misc/bsd-family-tree