python实现雨滴下落到地面效果


Posted in Python onJune 21, 2018

本文实例为大家分享了python实现雨滴下落到地面效果的具体代码,供大家参考,具体内容如下

本程序在Windows 64位操作系统下,安装的是Anaconda3-4.2.0

import numpy as np 
import matplotlib.pyplot as plt 
from matplotlib import animation 
 
# New figure with white background 
fig = plt.figure(figsize=(6,6), facecolor='white') 
 
# New axis over the whole figure, no frame and a 1:1 aspect ratio 
ax = fig.add_axes([0, 0, 1, 1], frameon=False, aspect=1) 
 
# Number of ring 
n = 50 
size_min = 50 
size_max = 50 ** 2 
 
# Ring position 
pos = np.random.uniform(0, 1, (n,2)) 
 
# Ring colors 
color = np.ones((n,4)) * (0,0,0,1) 
# Alpha color channel geos from 0(transparent) to 1(opaque) 
color[:,3] = np.linspace(0, 1, n) 
 
# Ring sizes 
size = np.linspace(size_min, size_max, n) 
 
# Scatter plot 
scat = ax.scatter(pos[:,0], pos[:,1], s=size, lw=0.5, edgecolors=color, facecolors='None') 
 
# Ensure limits are [0,1] and remove ticks 
ax.set_xlim(0, 1), ax.set_xticks([]) 
ax.set_ylim(0, 1), ax.set_yticks([]) 
 
def update(frame): 
  global pos, color, size 
 
  # Every ring is made more transparnt 
  color[:, 3] = np.maximum(0, color[:,3]-1.0/n) 
 
  # Each ring is made larger 
  size += (size_max - size_min) / n 
 
  # Reset specific ring 
  i = frame % 50 
  pos[i] = np.random.uniform(0, 1, 2) 
  size[i] = size_min 
  color[i, 3] = 1 
 
  # Update scatter object 
  scat.set_edgecolors(color) 
  scat.set_sizes(size) 
  scat.set_offsets(pos) 
 
  # Return the modified object 
  return scat, 
 
anim = animation.FuncAnimation(fig, update, interval=10, blit=True, frames=200) 
plt.show()

效果图:

python实现雨滴下落到地面效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python爬取NUS-WIDE数据库图片
Oct 05 Python
Python实现字符串格式化的方法小结
Feb 20 Python
Python实现的本地文件搜索功能示例【测试可用】
May 30 Python
Python下调用Linux的Shell命令的方法
Jun 12 Python
Windows下python3.7安装教程
Jul 31 Python
对Python random模块打乱数组顺序的实例讲解
Nov 08 Python
python 自动批量打开网页的示例
Feb 21 Python
python绘制评估优化算法性能的测试函数
Jun 25 Python
python3.x+pyqt5实现主窗口状态栏里(嵌入)显示进度条功能
Jul 04 Python
2021年值得向Python开发者推荐的VS Code扩展插件
Jan 25 Python
Python基础之数据类型知识汇总
May 18 Python
Python通用验证码识别OCR库ddddocr的安装使用教程
Jul 07 Python
使用python读取csv文件快速插入数据库的实例
Jun 21 #Python
详解python3中tkinter知识点
Jun 21 #Python
Python3用tkinter和PIL实现看图工具
Jun 21 #Python
Python3.4 tkinter,PIL图片转换
Jun 21 #Python
Python3实现转换Image图片格式
Jun 21 #Python
python3实现域名查询和whois查询功能
Jun 21 #Python
解决python写入mysql中datetime类型遇到的问题
Jun 21 #Python
You might like
基于mysql的论坛(1)
2006/10/09 PHP
php数组(array)输出的三种形式详解
2013/06/05 PHP
php ci框架中加载css和js文件失败的原因及解决方法
2014/07/29 PHP
详解WordPress开发中get_header()获取头部函数的用法
2016/01/08 PHP
thinkPHP线上自动加载异常与修复方法实例分析
2016/12/01 PHP
PHP魔术方法之__call与__callStatic使用方法
2017/07/23 PHP
Thinkphp5框架异常处理操作实例分析
2020/06/03 PHP
Aster vs Newbee BO5 第三场2.19
2021/03/10 DOTA
关闭浏览器窗口弹出提示框并且可以控制其失效
2014/04/15 Javascript
javascript递归回溯法解八皇后问题
2015/04/22 Javascript
详解JavaScript中循环控制语句的用法
2015/06/03 Javascript
JS获取屏幕高度的简单实现代码
2016/05/24 Javascript
浅析JavaScript中的对象类型Object
2016/05/26 Javascript
javascript学习笔记_浅谈基础语法,类型,变量
2016/09/19 Javascript
JavaScript循环_动力节点Java学院整理
2017/06/28 Javascript
微信小程序数字滚动插件使用详解
2018/02/02 Javascript
JS实现利用闭包判断Dom元素和滚动条的方向示例
2019/08/26 Javascript
js实现图片粘贴到网页
2019/12/06 Javascript
[01:44]剑指西雅图 展望TI之CIS战队专访
2014/06/25 DOTA
Python列表计数及插入实例
2014/12/17 Python
Python中easy_install 和 pip 的安装及使用
2017/06/05 Python
Python利用itchat对微信中好友数据实现简单分析的方法
2017/11/21 Python
基于Django URL传参 FORM表单传数据 get post的用法实例
2018/05/28 Python
python 读取文件并替换字段的实例
2018/07/12 Python
用于业余项目的8个优秀Python库
2018/09/21 Python
django框架事务处理小结【ORM 事务及raw sql,customize sql 事务处理】
2019/06/27 Python
学习Python列表的基础知识汇总
2020/03/10 Python
django model通过字典更新数据实例
2020/04/01 Python
HTML5中判断横屏竖屏的方法(移动端)
2016/08/04 HTML / CSS
施华洛世奇匈牙利官网:SWAROVSKI匈牙利
2019/07/06 全球购物
大学生学习2014年全国两会心得体会
2014/03/12 职场文书
乡镇党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
2015新年寄语大全
2014/12/08 职场文书
唐山大地震的观后感
2015/06/05 职场文书
python 如何执行控制台命令与操作剪切板
2021/05/20 Python
教你使用Ubuntu搭建DNS服务器
2022/09/23 Servers