創(chuàng)新互聯www.cdcxhl.cn八線動態(tài)BGP香港云服務器提供商,新人活動買多久送多久,劃算不套路!
成都創(chuàng)新互聯公司專注于定南企業(yè)網站建設,響應式網站設計,商城網站建設。定南網站建設公司,為定南等地區(qū)提供建站服務。全流程按需定制制作,專業(yè)設計,全程項目跟蹤,成都創(chuàng)新互聯公司專業(yè)和態(tài)度為您提供的服務小編給大家分享一下python制作動態(tài)畫面的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
python動圖的核心函數是matplotlib.animation.FuncAnimation,基本用法是:
anim = animation.funcanimation(fig, animate, init_func=init, frames=100, interval=20, blit=true) # fig: 是我們創(chuàng)建的畫布 # animat: 是重點,是我們每個時刻要更新圖形對象的函數,返回值和init_func相同 # init_func: 初始化函數,其返回值就是每次都要更新的對象, # 告訴FuncAnimation在不同時刻要更新哪些圖形對象 # frames: 相當于時刻t,要模擬多少幀圖畫,不同時刻的t相當于animat的參數 # interval: 刷新頻率,毫秒 # blit: blit是一個非常重要的關鍵字,它告訴動畫只重繪修改的部分,結合上面保存的時間, # blit=true會使動畫顯示得會非常非???/pre>示例:
import numpy as np import matplotlib.pyplot as plt from matplotlib.animation import FuncAnimation # 動圖的核心函數 import seaborn as sns # 美化圖形的一個繪圖包 sns.set_style("whitegrid") # 設置圖形主圖 # 創(chuàng)建畫布 fig, ax = plt.subplots() fig.set_tight_layout(True) # 畫出一個維持不變(不會被重畫)的散點圖和一開始的那條直線。 x = np.arange(0, 20, 0.1) ax.scatter(x, x + np.random.normal(0, 3.0, len(x))) line, = ax.plot(x, x - 5, 'r-', linewidth=2) def update(i): label = 'timestep {0}'.format(i) print(label) # 更新直線和x軸(用一個新的x軸的標簽)。 # 用元組(Tuple)的形式返回在這一幀要被重新繪圖的物體 line.set_ydata(x - 5 + i) # 這里是重點,更新y軸的數據 ax.set_xlabel(label) # 這里是重點,更新x軸的標簽 return line, ax # FuncAnimation 會在每一幀都調用“update” 函數。 # 在這里設置一個10幀的動畫,每幀之間間隔200毫秒 anim = FuncAnimation(fig, update, frames=np.arange(0, 10), interval=200)生成GIF動圖:
安裝imageio庫;接著如下代碼中的注釋,首先讀取靜態(tài)圖到列表,作為GIF的每一幀;接著設置輸入(靜態(tài)圖)、輸出(動態(tài)圖)和一些必要參數,我們這里設置每一幀間隔時間為1.5秒,默認是1秒,之后調用miageio.mimsave函數去保存結果。
''' Author: Solarzhou Email: tzhou@foxmail.com 公眾號:Solarzhou ''' import imageio def create_gif(image_list, gif_name, duration = 1.0): ''' :param image_list: 這個列表用于存放生成動圖的圖片 :param gif_name: 字符串,所生成gif文件名,帶.gif后綴 :param duration: 圖像間隔時間 :return: ''' frames = [] for image_name in image_list: frames.append(imageio.imread(image_name)) imageio.mimsave(gif_name, frames, 'GIF', duration=duration) return def main(): #這里放上自己所需要合成的圖片 image_list = ['1.jpg', '2.jpg', '3.jpg'] gif_name = 'new.gif' duration = 1.5 create_gif(image_list, gif_name, duration) if __name__ == '__main__': main()看完了這篇文章,相信你對python制作動態(tài)畫面的方法有了一定的了解,想了解更多相關知識,歡迎關注創(chuàng)新互聯-成都網站建設公司行業(yè)資訊頻道,感謝各位的閱讀!
本文名稱:python制作動態(tài)畫面的方法-創(chuàng)新互聯
轉載注明:http://weahome.cn/article/dhesgp.html