Python关于%matplotlib inline

Python关于%matplotlib inline

%matplotlib inline

是一个魔法函数(Magic Functions)。官方给出的定义是:IPython有一组预先定义好的所谓的魔法函数(Magic Functions),你可以通过命令行的语法形式来访问它们。可见“%matplotlib inline”就是模仿命令行来访问magic函数的在IPython中独有的形式。

magic函数分两种:一种是面向行的,另一种是面向单元型的。

行magic函数是用前缀“%”标注的,很像我们在系统中使用命令行时的形式,例如在Mac中就是你的用户名后面跟着“$”。“%”后面就是magic函数的参数了,但是它的参数是没有被写在括号或者引号中来传值的。

单元型magic函数是由两个“%%”做前缀的,它的参数不仅是当前“%%”行后面的内容,也包括了在当前行以下的行。

注意:既然是IPython的内置magic函数,那么在Pycharm中是不会支持的

%matplotlib作用

  1. 是在使用jupyter notebook 或者 jupyter qtconsole的时候,才会经常用到%matplotlib,也就是说那一份代码可能就是别人使用jupyter notebook 或者 jupyter qtconsole进行编辑的。关于jupyter notebook是什么,可以参考这个链接:[Jupyter Notebook介绍、安装及使用教程][1]
  2. 而%matplotlib具体作用是当你调用matplotlib.pyplot的绘图函数plot()进行绘图的时候,或者生成一个figure画布的时候,可以直接在你的python console里面生成图像
1 #内嵌画图
2 %matplotlib inline
3 import matplotlib # 注意这个也要import一次
4 import matplotlib.pyplot as plt
5 myfont = matplotlib.font_manager.FontProperties(fname=r'C:/Windows/Fonts/msyh.ttf') # 这一行
6 plt.plot((1,2,3),(4,3,-1))
7 plt.xlabel(u'横坐标',  fontproperties=myfont) # 这一段
8 plt.ylabel(u'纵坐标',  fontproperties=myfont) # 这一段
9 #plt.show() # 有了%matplotlib inline 就可以省掉plt.show()了
原文地址:https://www.cnblogs.com/yxh-amysear/p/9426029.html