0.最终效果

1.绘制一条心形曲线

最近看到个视频,打算绘制个心型动态的曲线。

1.1 Matlab确定图像及其函数

网上有很多关于心形曲线的资料,各种各样的形状,但是我比较倾心于桃心形。先在Matlab里简单看一下是什么样的。

桃心形曲线的方程如下x = 16sin^3(t)y = 13cos(t)-5cos(2t)-2cos(3t)-cos(4t)

Matlab绘制效果如下:

Matlab程序如下。clc

clear

t = -10:0.01:10

x = 16*(sin(t)).^3

y = 13*cos(t)-5*cos(2*t)-2*cos(3*t)-cos(4*t)

%ylim([-5,2])

%xlim([-3,3])

grid on;

hold on

plot(x,y,'linewidth',1)

1.2 Python绘制动态曲线

光是一张图片,属实是太乏味了,不如直接找网图。为了让这个心形曲线更有意思点,我使用了matplotlib中的animation模块来绘制一个动态的心形。

首先需要进行初始化x,y列表、窗口和曲线。fig, ax = plt.subplots()

#初始化窗口和坐标轴

xdata, ydata = [], []

#初始化x,y列表

ln, = ax.plot([], [], 'r-', animated=False)

#初始化绘制曲线的参数。

然后使用两个核心函数init()和updata()计算曲线经过的点。#init()函数初始化x,y轴范围

def init():

ax.set_xlim(-20,20)

ax.set_ylim(-20,15)

return ln,#迭代器,根据传入的frame更新x,y值

def update(frame):

xdata.append(np.sin(frame)^3)

ydata.append(13*np.cos(frame)-5*cos(2*frame)-2*cos(3*frame)-cos(4*frame))

ln.set_data(xdata, ydata)

return ln,

最后调用一下函数,设置一下显示速度(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绘制图像时,常常会遇到无法显示的情况,这种情况大概率是backend的问题。使用下面的代码,选择backend为qt5。%matplotlib qt5

python画动态爱心-【Python】五分钟画一条动态心形曲线~相关推荐

  1. python动态爱心曲线_【Python】五分钟画一条动态心形曲线~

    0.最终效果 1.绘制一条心形曲线 最近看到个视频,打算绘制个心型动态的曲线. 1.1 Matlab确定图像及其函数 网上有很多关于心形曲线的资料,各种各样的形状,但是我比较倾心于桃心形.先在Matl ...

  2. python动态爱心曲线_python代码画出爱心曲线

    Python的拿手好戏是解决数据分析和可视化问题,本篇文章给大家分享的是python代码画出爱心曲线的操作详解,内容挺不错的,希望可以帮助到有需要的朋友. 先不急着画爱心线,来看如何画函数曲线. 例如 ...

  3. 30个超实用的Python极简代码,五分钟get

    学Python怎样才学的好又快呢,当然是实战各种小项目,只有自己动手动脑,才能最高效的搞懂规则,初学者也可以尝试着自己实现哦.(文末有Python资料领取) Python是机器学习最广泛采用的编程语言 ...

  4. wps画流程图交叉弧形_WPS3分钟画出高逼格的流程图

    今天小迪想和大家唠唠WPS两个独特的办公工具:[WPS流程图]和[WPS脑图] 可能很多人潜意识里觉得流程图和脑图比较麻烦很难画,甚至还有一些盆友从来没有听过流程图和脑图.实际上无论工作还是学习还是日 ...

  5. 怎么python画好几朵玫瑰花_用Python画朵玫瑰,只要五分钟

    又到一年母亲节,先祝福所有妈妈节日快乐,哈哈.最近一个项目在用python,想着这次不用java了,用python给妈妈个礼物吧.Turtle库是Python语言中一个非常强大的绘制图像的函数库,她提 ...

  6. python画动态爱心-python绘制动态爱心

    CSS布局HTML小编今天和大家分享助用python从数据库取数据动态生成表格的方法 一.可使用的第三方库 python中处理excel表格,常用的库有xlrd(读excel)表.xlwt(写exce ...

  7. 用python画颗爱心祝生日快乐_Python画颗爱心祝生日快乐

    年年有今日,岁岁有今朝,为了幸福生活和家庭和谐,我家那位每年的生日是必须要认真准备认真过的.蛋糕和生日礼物是不能少的,更重要的是我一定要陪在身边.除此之外,今年再玩上一点花样,用Python来画颗心出 ...

  8. python代码怎么写出色_如何写出更具有Python风格的代码,五分钟教会你!

    我们都喜欢 Python,因为它让编程和理解变的更为简单.但是一不小心,我们就会忽略规则,以非 Pythonic 方式编写一堆垃圾代码,从而浪费 Python 这个出色的语言赋予我们的优雅.Pytho ...

  9. 五分钟学会python函数_Python——带你五分钟了解函数式编程与闭包

    今天是Python专题的第9篇文章,咱们来聊聊Python的函数式编程与闭包.编程 函数式编程 函数式编程这个概念咱们可能或多或少都据说过,刚据说的时候不明觉厉,以为这是一个很是黑科技的概念.可是实际 ...

最新文章

  1. host ntrip 千寻rtk_什么是千寻知寸cors账号?它提供的定位服务精度如何?使用时需要注意哪些问题?...
  2. 微软,您的.net为中国程序员带来了什么?
  3. 【机器学习】基于自适应变异粒子群算法的非线性函数寻优
  4. 碎片Fragment
  5. dot--向量或矩阵的点乘
  6. CSS固定定位[相对浏览器] 相对定位[相对自己] 绝对定位[有relative的元素]
  7. table切换数据 vue_Vue 知识整合贴 ( 超干货,适合收藏)
  8. Hystrix Dashboard的使用与常见问题总结
  9. 线性期望(BUPT2015校赛.F)
  10. Linux内核 crypto文件夹 密码学知识学习
  11. VGGnet论文解读及代码实现
  12. .net开发工程师是做什么的_.NET能开发出什么样的APP?盘点那些通过Smobiler开发的移动应用...
  13. AnalyserNode
  14. Mysql通过存储过程批量插入数据
  15. 企业打开云HBase的正确方式,来自阿里云云数据库团队的解读
  16. ORACLE数据库 基础练习表EMP\DEPT \SALGRADE脚本
  17. [leetcode]241. 为运算表达式设计优先级
  18. NRF24L01无线通信模块
  19. xp系统usb android,xp系统usb网络共享怎么设置,xp系统usb手机网络共享设置方法
  20. 求两个列表的交集、并集和补集

热门文章

  1. Eclipse下Tomcat插件的安装
  2. 2018 UESTC 线段树专题
  3. CC2530学习路线-基础实验-串口通讯发送字符串(4 未完待续)
  4. Redis使用及工具类
  5. Intellij 如何在新窗口中打开项目
  6. 《Head First 设计模式》之命令模式——遥控器
  7. maven 通用pom.xml
  8. .NET Core的日志[4]:将日志写入EventLog
  9. 104. Maximum Depth of Binary Tree
  10. 【设计模式】外观模式