python3_matplotlib_figure()函数解析

1.绘图库导入

[python] view plain copy
  1. import numpy as np  
  2. import matplotlib.pyplot as plt  

2.创建一个图形实例

[python] view plain copy
  1. 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才能正确的释放内存。

3.函数头:

[python] view plain copy
  1. def figure(num=None, figsize=None, dpi=None, facecolor=None, edgecolor=None, frameon=True, FigureClass=Figure, clear=False, **kwargs)  

4.参数说明:

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厘米)

实验:

[python] view plain copy
  1. import numpy as np  
  2. import matplotlib.pyplot as plt  
  3.   
  4. fig1 = plt.figure(num="3*1 inches",figsize=(3,1))     
  5. fig2 = plt.figure(num="6*2 inches",figsize=(6,2))  
  6.   
  7. plt.show()  
  8. plt.close  

运行结果如下:


num深入实验

[python] view plain copy
  1. import numpy as np  
  2. import matplotlib.pyplot as plt  
  3.   
  4. fig1 = plt.figure(num='fig1',figsize=(6,3),dpi=75,facecolor='#666666',edgecolor='#0000FF')  
  5. fig2 = plt.figure(num='fig2',figsize=(6,3),dpi=75,facecolor='#FFFFFF',edgecolor='#FF0000')  
  6. plt.xlim(0,20)  
  7. plt.ylim(0,10)  
  8.   
  9. plt.show()  
  10. plt.close()  

运行结果:


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

[python] view plain copy
  1. import numpy as np  
  2. import matplotlib.pyplot as plt  
  3.   
  4. fig1 = plt.figure(num='fig1',figsize=(6,3),dpi=75,facecolor='#666666',edgecolor='#0000FF')  
  5. fig2 = plt.figure(num='fig2',figsize=(6,3),dpi=75,facecolor='#FFFFFF',edgecolor='#FF0000')  
  6. plt.xlim(0,20)  
  7. plt.ylim(0,10)  
  8.   
  9. plt.figure(num='fig1')  
  10. plt.xlim(0,20)  
  11. plt.ylim(0,10)  
  12.   
  13. plt.show()  
  14. plt.close()  

实验结果:



dpi : integer, optional, default: None

resolution of the figure. If not provided, defaults to rc figure.dpi.

dpi:图形分辨率,缺省值为rc figure.dpi

实验:

[python] view plain copy
  1. import numpy as np  
  2. import matplotlib.pyplot as plt  
  3.   
  4. fig1 = plt.figure(num="dpi=72",figsize=(6,2),dpi=72)     
  5. fig2 = plt.figure(num="dpi=100",figsize=(6,2),dpi=100)  
  6.   
  7. plt.show()  
  8. 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实例

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值