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安装即可:



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

配置Jupyter环境:安装+补全+美化+常用库的更多相关文章

  1. 环境配置 jupyter代码自动补全

    自动补全 参考链接: https://www.lefer.cn/posts/15473/

  2. Java基础-配置开发环境-安装JDK

    Java基础-配置开发环境-安装JDK 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.计算机基础知识 1>.计算机的组成 计算机有硬件与软件组成. 2>.硬件: 硬 ...

  3. Jupyter Notebook自动补全

    大多数程序员都非常熟悉不同的自动补全工具.然而,我注意到许多数据科学家还没有使用它.如果你是他们中的一员,是时候开始使用这个提高效率的工具了 什么是自动补全? 它是你的编程环境提供的一种功能,用于完成 ...

  4. 配置开发环境&安装sklearn

    我的开发环境是Jupyter lab,所用的库和版本大家参考: Python 3.7.1(你的版本至少要3.4以上) Scikit-learn 0.20.0 (你的版本至少要0.19) Graphvi ...

  5. Jupyter notebook 自动补全

    Jupyter notebook 自动补全   Jupyter notebook使用默认的自动补全是关掉的.要打开自动补全,需修改默认配置.  ipython profile create 以上命令会 ...

  6. purcell的emacs配置中的自动补全功能开启

    标记一下,原文参看purcell的emacs配置中的自动补全功能开启 修改init-auto-complete.el文件 ;;(setq-default ac-expand-on-auto-compl ...

  7. Linux --- vim 安装、支持python3的配置、插件自动补全YCM的安装配置及全过程错误总结

    1.git(用来下载vim和相关插件) sudo apt-get install git 2,cmake(用来编译clang-llvm) sudo apt-get install build-esse ...

  8. jupyter notebook自动补全功能实现

    Jupyter notebook使用默认的自动补全是关掉的.要打开自动补全,需修改默认配置. 命令行中输入:ipython profile create 以上命令会在~/.ipython/profil ...

  9. Learning Lua Programming (3) iMac下搭建Lua脚本最好的编码环境(代码补全,编译运行)

    这篇文章参考自http://blog.sina.com.cn/s/blog_991afe570101rdgf.html,十分感谢原作者的伟大创造,本人亲测可行. 这篇文章记录一下如何在MAC系统环境下 ...

随机推荐

  1. 1094 The Largest Generation ——PAT甲级真题

    1094 The Largest Generation A family hierarchy is usually presented by a pedigree tree where all the ...

  2. 简单比较 @EnableEurekaClient 和 @EnableDiscoveryClient 两个注解

    @EnableEurekaClient 和 @EnableDiscoveryClient 都是让eureka发现该服务并注册到eureka的注解 相同点: 它们都能让注册中心Eureka发现 , 并将 ...

  3. 关于电脑硬盘的二三事(SATA接口)

    @ 目录 前言 接口分类 SATA3接口 机械硬盘 机械硬盘的特点和主要参数 西部数据机械盘分类 绿·蓝·黑盘 红盘 紫盘 金盘 希捷机械盘分类 酷狼 酷鱼 酷鹰 银河 SATA3接口的固态硬盘 固态 ...

  4. 后端程序员之路 59、go uiprogress

    gosuri/uiprogress: A go library to render progress bars in terminal applicationshttps://github.com/g ...

  5. 后端程序员之路 28、一个轻量级HTTP Server的实现

    提到http server,一般用到的都是Apache和nginx这样的成熟软件,但是,有的情况下,我们也许也会用一些非常轻量级的http server.http server的c++轻量级实现里,M ...

  6. 【pytest官方文档】解读fixtures - 2. fixtures的调用方式

    既然fixtures是给执行测试做准备工作的,那么pytest如何知道哪些测试函数 或者 fixtures要用到哪一个fixtures呢? 说白了,就是fixtures的调用. 一.测试函数声明传参请 ...

  7. Java 面向对象 05

    面向对象·五级 package关键字的概述及作用 * A:为什么要有包     * 将字节码(.class)进行分类存放      * 包其实就是文件夹 * B:包的概述     举例:        ...

  8. ORM思想解析

    ORM思想解析 qq_16055765 2019-01-10 11:29:08 1688 收藏 1 分类专栏: # hibernate 最后发布:2019-01-10 11:29:08首次发布:201 ...

  9. 【python+selenium的web自动化】- 8种元素定位方式详解

    ​ 我们在做WEB自动化时,最根本的就是操作页面上的各种元素,而操作的基础便是元素的定位,只有准确地定位到唯一元素才能进行后续的自动化控制,下面将对各种元素定位方式进行总结归纳. ​ 说明:以下操作统 ...

  10. FreeBSD 家图谱

    https://cgit.freebsd.org/src/tree/share/misc/bsd-family-tree