anacondaAnaconda

Jupyter Notebook使用教程

2019-10-16  本文已影响0人  你在遥望

1.1 Jupyter Notebook 概述

    Anaconda 安装完成后,在开始菜单中选择 Jupyter Notebook 即可启动,如下图(1.png)所示。
1.png
    Jupyter notebook特别适合做数据处理、可视化、机器学习和大数据分析。利用该软件可将说明文本、数学方程、  
代码和可视化内容全部组合到一个易于共享的文档中。                                      

    Jupyter Notebook采用B/S工作模式,其基础架构如下图(2.png)所示。
2.png
    Jupyter Notebook的核心是 Notebook Server,用户通过浏览器连接到该服务器。Notebook 呈现为 Web应用,  
 用户在 Web 应用中编写的代码通过该服务器发送给内核,内核运行代码,并将结果发送回服务器。

    任何输出都会返回到浏览器中呈现。保存Notebook 时,它将作为JSON文件(扩展名为.ipynb)写入到服务器  
中。启动过程中会出现如下图(3.png)所示的命令行界面,这是Jupyter Notebook的服务器,在Jupyter   Notebook
的工作过程中是不能关闭的。

    Notebook 服务器默认URL:http://localhost:8888  
    只要Notebook 服务器仍在运行,随时可通过默认URL 返回到 web 页面。
3.png
    Jupyter Notebook启动后会在浏览器中打开一个窗口。在菜单栏中有Files、Running、Clusters、Conda四个  
选项,如下图(4.png)所示。
4.png

1.2 新建Notebook

    Jupyter Notebook启动后可以通过点击“New”菜单创建新的Notebook、文本文件、文件夹或终端等。如创建  
新的Python3的ipynb文件:
    点击“New”→“Python3”
    Notebook的编辑界面如下图(5.png)所示。
5.png

1.3 单元格

    Notebook 中大部分代码编写和执行工作都是在单元格(Cell)中完成,就像在 IDE 软件里输入代码一样,可以  
给变量赋值、定义函数和类、导入包等。执行单元格代码可以通过 Shift + Enter 或 Ctrl+Enter来完成。其主要功能和  
方法包括两种模式和四种功能。在命令模式下可用快捷键“h”弹出快捷键窗口。

1.3.1 两种模式

1. 编辑模式

    编辑模式下用户可将代码或文本输入到单元格,如下图(6.png)所示,其标志是右上角有一只铅笔的图标,单元  
格呈绿色。编辑模式下按Esc键或通过运行单元格代码切换至命令模式,编辑模式下的快捷键如下图(7.png)所示。
6.png
    在单元格中输入下列代码,按Ctrl+Enter运行并观察出现什么情况。    
   
        import numpy as np

        import matplotlib.pyplot as plt

        points = np.arranges(-5,5,0.01)

        x, y = np.meshgrid(points,points)

        z = np.sqrt(x**2+y**2)

        plt.imshow(z, cmap = plt.cm.gray)

        plt.show()
7.png

2. 命令模式

    命令模式下用户可进行如下图(8.png)所示,右上角铅笔图标消失,单元格左侧呈蓝色。命令模式下按Enter键  
或鼠标双击Cell切换至编辑模式。命令模式下的快捷键如下图(9.png)所示。
8.png
9.png

1.3.2 编辑功能

    Cell有四种编辑功能:代码(Code)、标记(Markdown)、Raw NBConvert和标题(Heading),如下图(10.png)所示。  
Code用于写代码,Markdown用于文本编辑,Raw NBConvert中的文字或代码等都不会被运行,Heading是用于设  
置标题的,这个功能已经包含在Markdown中了。在此主要介绍代码Code和Markdown功能。
10.png

1. Code(代码)编辑功能

    在命令模式下,按快捷键Y可进入代码编辑状态,单元格可能出现三类提示符,其对应含义如下表所示:
提示符 含义
In[ ] 程序未运行
In[1] 程序运行后
In[*] 程序正在运行

2. Markdown(标记)编辑功能

    在命令模式下,按快捷键M可进入标记编辑状态,Markdown 是格式化语法,可以加入链接、将文本样式设为粗体  
或斜体和设置代码格式。Markdown的详细用法见网址:https://daringfireball.net/projects/markdown/basics。

    利用Markdown可直接在代码旁写出叙述性文档。对于Markdown 单元格,同样可通过组合键Shift + Enter或Ctrl +
Enter运行单元格,常用的Markdown用法如下图(11.png)所示。
11.png

1.4 魔法函数

    使用魔法函数可以用较简单的方法实现较为复杂的功能。
    % :行魔法函数,只对本行代码生效。 
    %% :Cell魔法函数,在整个Cell中生效,必须放于Cell首行。 
    %lsmagic :列出所有的魔法函数。 
    %magic 魔法函数名称:查看该魔法函数的说明。
    ? 魔法函数名称:查看该魔法函数的说明。
    常用的魔法函数及功能如下表所示。
魔法函数 作用
%run 调用外部python脚本
%timeit 测试单行语句的执行时间
%%timeit 测试整个单元中代码的执行时间
% matplotlib inline 显示 matplotlib 包生成的图形
%%writefile 写入文件
%pdb 调试程序
%pwd 查看当前工作目录
%ls 查看目录文件列表
%reset 清除全部变量
%debug bug调试,输入quit退出调试
%env 列出全部环境变量

1.5 导出pdf文件

    Anaconda安装完成后,可将代码、运行结果以及Markdown导出为pdf文件,但默认情况下该操作会提示“未  
安装xelatex”,如下图(12.png)所示。
12.png
    两个步骤可以解决这个问题:(1)安装Miktex;(2)修改模板文件。

1.5.1 安装Miktex

    打开截图提示的网址:https://nbconvert.readthedocs.io/en/latest/install.html#installing-tex
    下载Miktex并按照提示安装,安装完成后重启NoteBook Server。
    有些情况需要安装nbconvert pandoc,如需安装,命令如下:
        conda install nbconvert pandoc        

1.5.2 修改lex模板文件

    上述步骤完成后能够生成pdf文件,但无法正常显示中文,通过修改两个lex模版文件来解决:

1. 修改article.tplx(一共有两个)

    (1)首先找到article.tplx文件,在Anaconda中的示例路径如下:
    C:\ProgramData\Anaconda3\Lib\site-packages\nbconvert\templates\latex
    C:\ProgramData\Anaconda3\pkgs\nbconvert-5.4.0-py37_1\Lib\site-packages\nbconvert\templates\latex

    (2)用文本编辑器打开article.tplx:
    将 “\documentclass[11pt]{article}” 
    修改为
     “\documentclass[11pt]{ctexart}”。
    通过上述修改之后,正文中的中文可以正常显示,但是标题上的中文不能正常显示。

2. 修改base.tplx(一共有两个)

    (1)注销 fontenc:
    将 \usepackage[T1]{fontenc}
    修改为:
    %\usepackage[T1]{fontenc},即前面加“%”。
    (2)修改tittle 生成规则:
    将\title{((( nb_title | ascii_only | escape_latex )))}
    修改为:
    \title{((( nb_title | escape_latex )))},即去掉“ascii_only |”
    重新启动NoteBook Server后即可完美导出pdf文件。
上一篇下一篇

猜你喜欢

热点阅读