【Python】animation模塊簡介及應用實戰---畫一條動態心形曲線

歡迎關注公衆號【拇指筆記】,持續更新一些好玩、有趣的Python小項目。
需要程序的朋友,直接私信我即可。

先上效果:

在這裏插入圖片描述

原文鏈接

繪製一條心形曲線

最近看到個視頻,打算繪製個心型動態的曲線。

Matlab確定圖像及其函數

網上有很多關於心形曲線的資料,各種各樣的形狀,但是我比較傾心於桃心形。現在Matlab裏簡單看一下是什麼樣的。
這個曲線的方程如下
x=16sin3(t)y=13cos(t)5cos(2t)2cos(3t)cos(4t) x = 16sin^3(t) \\y = 13cos(t)-5cos(2t)-2cos(3t)-cos(4t)
使用Matlab畫的效果如下
在這裏插入圖片描述
Matlab程序如下
在這裏插入圖片描述

Python繪製動態曲線

光是一張圖片,屬實是太乏味了,不如直接截圖。爲了讓這個心形曲線更有意思點,我使用了matplotlib中的animation模塊來繪製一個動態的心形。
使用animation模塊繪製一個動態圖形。
首先需要進行初始化x,y列表、窗口和曲線

在這裏插入圖片描述
然後使用兩個核心函數init()和updata()計算曲線經過的點。
在這裏插入圖片描述

最後調用一下函數,設置一下顯示速度(interval),是否重複繪製(repeat)等參數即可。

ani = animation.FuncAnimation(fig, update, frames=np.linspace(0,10,1000),init_func=init,interval=5, repeat = False,blit=True)

1.3 幾點注意

  • 使用imagemagick工具,可以將圖片保存爲gif格式。
 ani.save('heart.gif',writer='imagemagick',fps=30)

選擇matplotlib的backend。如果使用jupyter notebook繪製圖像時,遇到無法顯示的情況,使用下面的代碼就可以解決。

 %matplotlib qt5

覺得好看的話點個讚唄~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章