您的位置:首页 > 编程语言 > PHP开发

matplotlib figure函数学习笔记

2018-03-07 22:50 579 查看
绘图库导入import numpy as np
import matplotlib.pyplot as plt创建一个图形实例plt.figure(figsize=(15,5))
figure说明:The Figure instance returned will also be passed to new_figure_manager in the backends, which allows to hook custom Figure classes into the pylab interface. Additional kwargs will be passed to the figure init function。
含义猜测:通过new_figure_manager(新图形管理器)返回一个figure图形实例。定制的figure类将与pylab接口进行关联,同时将相关参数传递给figure的初始化函数。   

note:If you are creating many figures, make sure you explicitly call "close" on the figures you are not using, because this will enable pylab to properly clean up the memory.
注意:如果你创建了多个figure实例,必须确保你显式的调用“close”来释放你已经不再使用的figure实例。因为只有这样pylab才能正确的释放内存。
函数头:def figure(num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True, FigureClass=Figure, clear=False, **kwargs)参数说明:
num : integer or string, optional, default: none
If not provided, a new figure will be created, and the figure number will be incremented. The figure objects holds this number in a number attribute. If num is provided, and a figure with this id already exists, make it active, and returns a reference to it. If this figure does not exists, create it and returns it. If num is a string, the window title will be set to this figure's num.

num:如果此参数没有提供,则一个新的figure对象将被创建,同时增加figure的计数数值,此数值被保存在figure对象的一个数字属性当中。如果有此参数,且存在对应id的figure对象,则激活对于id的figure对象。如果对应id的figur对象不存在,则创建它并返回它。如果num的值是字符串,则将窗口标题设置为此字符串。
figsize : tuple of integers, optional, default: None
width, height in inches. If not provided, defaults to rc figure.figsize
figsize:以英寸为单位的宽高,缺省值为 rc figure.figsize (1英寸等于2.54厘米)
实验:import numpy as np
import matplotlib.pyplot as plt

fig1 = plt.figure(num="3*1 inches",figsize=(3,1))
fig2 = plt.figure(num="6*2 inches",figsize=(6,2))

plt.show()
plt.close
运行结果如下:



num深入实验import numpy as np
import matplotlib.pyplot as plt

fig1 = plt.figure(num='fig1',figsize=(6,3),dpi=75,facecolor='#666666',edgecolor='#0000FF')
fig2 = plt.figure(num='fig2',figsize=(6,3),dpi=75,facecolor='#FFFFFF',edgecolor='#FF0000')
plt.xlim(0,20)
plt.ylim(0,10)

plt.show()
plt.close()运行结果:



我建立了两个figure图,plt.xlim,plt.ylim只给最后创建的figure(fig2)配置,如果我想给第一个figure配置xlim与lim该怎么做?这个时候就可以用num参数了 。import numpy as np
import matplotlib.pyplot as plt

fig1 = plt.figure(num='fig1',figsize=(6,3),dpi=75,facecolor='#666666',edgecolor='#0000FF')
fig2 = plt.figure(num='fig2',figsize=(6,3),dpi=75,facecolor='#FFFFFF',edgecolor='#FF0000')
plt.xlim(0,20)
plt.ylim(0,10)

plt.figure(num='fig1')
plt.xlim(0,20)
plt.ylim(0,10)

plt.show()
plt.close()实验结果:



dpi : integer, optional, default: None

resolution of the figure. If not provided, defaults to rc figure.dpi.
dpi:图形分辨率,缺省值为rc figure.dpi
实验:import numpy as np
import matplotlib.pyplot as plt

fig1 = plt.figure(num="dpi=72",figsize=(6,2),dpi=72)
fig2 = plt.figure(num="dpi=100",figsize=(6,2),dpi=100)

plt.show()
plt.close


相同的figsize,不同的dpi,可见dpi越大则图形越大
facecolor :

the background color. If not provided, defaults to rc figure.facecolo
facecolor:背景色
edgecolor :

the border color. If not provided, defaults to rc figure.edgecolor
edgecolor:边框颜色
frameon : bool, optional, default: True

If False, suppress drawing the figure frame.
frameon:默认值True为绘制边框,如果为False则不绘制边框
FigureClass : class derived from matplotlib.figure.Figure

Optionally use a custom Figure instance.
FigureClass:matplotlib.figure.Figure派生类,从派生类创建figure实例
clear : bool, optional, default: False

If True and the figure already exists, then it is cleared
clear:重建figure实例
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python matplotlib figure