以前写python一直使用的是Pycharm,最近听同学都在谈论Jupyter做数据科学很方便易用,于是着手学习学习。以前也简单尝试过Jupyter,但是没觉得比Pycharm好用,这次要认真使用看看。
安装
在使用之前,我们需要先进行安装。在 Jupyter website 上能找到完整的安装步骤。
但是我更推荐大家安装 Anaconda,它不仅自带了 python 环境,还自带了 Numpy、Scipy、Matplotlib 等多种 python 开发包和我们要使用的 Jupyter notebook。
可以通过官网下载
但是官网速度可能比较慢,所以可以从中科大的镜像网站下载
Anaconda有对应的Linux、Windows、macOS版本,我使用的是windows环境。安装好之后,在[开始菜单]—>[所有程序]—>[Anaconda]文件夹下,就能找到 Jupyter Notebook 的快捷方式。
打开后会看到命令行显示如下语句
随后网页主窗口会自动打开。
主界面介绍
Jupyter的主窗口显示的路径一般是你启动notebook时位于的路径下(通常在你的用户目录下)。可以通过这里的方法更改默认路径。
主界面如下所示:
若要创建一个新的notebook,只需鼠标点击New,在下拉选项中选择一个你想启动的notebook类型即可。
这里我们新建一个Python3文件,各部分介绍如图所示。
代码与注释
在主区域(编辑区),可以看到一个个单元(cell)。每个notebook都由许多cell组成,每个cell有不同的功能。
绿色的轮廓线所在的cell,就是当前工作单元。
cell以“In[ ]”开头表示这是一个代码单元。在代码单元里,可以输入任何代码并执行。
只有带返回值的cell输出,才会有“Out” 标志。
notebook一个非常有趣的特性是可以返回之前的cell,修改并重新运行,以此来跟新整个文档。
通过使用其他类型的cells,例如Header和Markdown单元可以使notebook更优美更可解释。
选择第一个cell,点击Insert->Insert cell above,则在这个cell上面会添加一个新的单元。通过cell type菜单选择Heading或Markdown替换之前的code类型,这样就能让解释文本更加丰富。
Markdown单元高级用法
markdown,它同时也支持HTML代码。你可以在你的cell中创建更高级的样式,比如添加图片等等。举个例子来说,如果你想在notebook中添加Jupyter的图标,尺寸为100x100,并且放置在cell左侧,可以这样编写:
1 | <img src="http://blog.jupyter.org/content/images/2015/02/jupyter-sq-text.png"style="width:100px;height:100px;float:left"> |
除此之外,markdown还支持LaTex语法。你可以在markdown cell中按照LaTex语法规则写下方程式,然后直接运行,就可以看到结果。例如运行下面方程式:
1 | $$\int_0^{+\infty} x^2 dx$$ |
运行后就得到了LaTex方程式:
Matplotlib集成
Matplotlib是用来画图的Python库。与Jupyter notebook结合使用时,效果更好。
为了在Jupyter notebook中使用 Matplotlib,你需要告诉Jupyter获取所有 Matplotlib 生成的图形,并把它们全部嵌入到notebook中。输入以下命令:
1 | %matplotlib inline |
可以看到,图直接嵌入到notebook中,就在代码下面。修改代码,重新运行,图形将自动同步更新。
导出功能
Jupyter notebook可以把notebook导出为如下多种形式:
- HTML
- Markdown
- ReST
- PDF(Through LaTex)
- Raw Python
需要注意的是,转换为pdf格式之前,同样要保证已经安装了xelatex。