當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python Matplotlib.axis.Axis.add_callback()用法及代碼示例


Matplotlib是Python中的一個庫,它是數字的-NumPy庫的數學擴展。它是Python中令人驚歎的可視化庫,用於數組的2D圖,並用於與更廣泛的SciPy堆棧配合使用。

Matplotlib.axis.Axis.add_callback()函數

matplotlib庫的axis模塊中的Axis.add_callback()函數用於添加一個回調函數,隻要Artist的一個屬性發生更改,該函數就會被調用。

用法: Artist.add_callback(self, func) 

參數:此方法接受以下參數。

  • func:此參數是回調函數。

返回值:此方法返回與回調關聯的觀察者ID。



以下示例說明了matplotlib.axis中的matplotlib.axis.Axis.add_callback()函數:

範例1:

Python3

# Implementation of matplotlib function 
from matplotlib.axis import Axis 
import matplotlib.pyplot as plt  
import numpy as np  
import time  
    
def update():
    plt.get_current_fig_manager()\ 
    .canvas.figure.patch.\ 
    set_facecolor(str(np.random.random()))  
    plt.draw()  
    print("Draw at time:", time.time()) 
          
def start_animation():
    timer = fig.canvas.new_timer(interval = 200)  
    timer.add_callback(update)  
    timer.start()  
    
fig, ax = plt.subplots()  
start_animation()  
          
ax.set_title('matplotlib.axis.Axis.add_callback() \ 
function Example', fontweight ="bold")   
    
plt.show() 

輸出:

範例2:

Python3

# Implementation of matplotlib function 
from matplotlib.axis import Axis 
from random import randint, choice   
import time   
import matplotlib.pyplot as plt   
import matplotlib.patches as mpatches   
      
      
back_color = "black"
colors = ['red', 'green', 'blue', 'purple']   
width, height = 4, 4
      
fig, ax = plt.subplots()   
ax.set(xlim =[0, width], ylim =[0, height])   
      
fig.canvas.draw()   
      
def update():   
    x = randint(0, width - 1)   
    y = randint(0, height - 1)   
      
    arti = mpatches.Rectangle(   
        (x, y), 1, 1,   
        facecolor = choice(colors),   
        edgecolor = back_color   
    )   
    ax.add_artist(arti)  
        
    ax.draw_artist(arti)   
    fig.canvas.blit(ax.bbox)   
    print("Draw at time:", time.time())   
      
timer = fig.canvas.new_timer(interval = 1)   
timer.add_callback(update)   
timer.start()   
          
ax.set_title('matplotlib.axis.Axis.add_callback() \ 
function Example', fontweight ="bold")   
    
plt.show() 

輸出:

Draw at time:1591263025.354224
Draw at time:1591263025.4612164
Draw at time:1591263025.6232233
Draw at time:1591263025.748225
Draw at time:1591263025.8842134
...... so on...




相關用法


注:本文由純淨天空篩選整理自SHUBHAMSINGH10大神的英文原創作品 Matplotlib.axis.Axis.add_callback() in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。