python的matplotlib绘制动态图形(用animation中的FuncAnimation)
Posted gdsmdsfy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python的matplotlib绘制动态图形(用animation中的FuncAnimation)相关的知识,希望对你有一定的参考价值。
%matplotlib auto
# 数据透视表:
# 统计各月每天的刷卡金额之和
# month_day_df = pd.pivot_table(data_df,values="刷卡金额",index="日",columns="月份",aggfunc=np.sum)
# 用折线图表示1月份每天的刷卡金额之和
import matplotlib.pyplot as plt
from matplotlib.animation import FuncAnimation # 导入动画库
import random
import numpy as np
import pandas as pd
plt.rcParams["font.sans-serif"] = "SimHei"
fig = plt.figure(figsize=(12,8),dpi=80) # 画布
month_day_df = np.random.randint(10000,100000,size=(31,12)) # 生成随机测试数据
# 动画函数
def animate(i):
plt.gca().cla() # 清除屏幕
# 1.准备数据
x_data = [i for i in range(1,13)]
y_data = month_day_df[i+1]
color_v2 = random.choice(["red","blue","pink","purple","yellow","green","orange","black"])
# 2.绘制图形
plt.plot(x_data,y_data,line,color=color_v2)
# 添加标题"每月每天的刷卡金额总和折线图"
plt.title(f"i+1月的刷卡金额总和折线图",fontsize=20)
# 添加x轴标签"时间"
plt.xlabel("时间")
# 添加y轴标题"金额"
plt.ylabel("金额")
# 添加x轴刻度标签为x_data
plt.xticks(x_data)
plt.legend(["消费金额合计"],loc=0) # 图例
# 将数字放到折线上
for k in range(len(x_data)):
plt.text(x_data[k],y_data[k],y_data[k])
ani = FuncAnimation(fig=fig,func=animate,frames=12,interval=500)
# fig:在fig画布中绘制,func:动画函数,frames:循环多少次,interval:频率;
# 3.显示图形
plt.show()
# 日行一善:昨天我估计是起到作用了,安慰的他的心情了
# 日进一步:今天我的眼睛不是很疼了,我要想想自媒体怎么做,还有看看中考体育的相关内容
Python 使用 matplotlib绘制3D图形
3D图形在数据分析、数据建模、图形和图像处理等领域中都有着广泛的应用,下面将给大家介绍一下如何在Python中使用 matplotlib进行3D图形的绘制,包括3D散点、3D表面、3D轮廓、3D直线(曲线)以及3D文字等的绘制。
准备工作:
python中绘制3D图形,依旧使用常用的绘图模块matplotlib,但需要安装mpl_toolkits工具包,安装方法如下:windows命令行进入到python安装目录下的Scripts文件夹下,执行: pip install --upgrade matplotlib即可;Linux环境下直接执行该命令。
安装好这个模块后,即可调用mpl_tookits下的mplot3d类进行3D图形的绘制。
下面以实例进行说明。
1、3D表面形状的绘制
这段代码是绘制一个3D的椭球表面,结果如下:
2、3D直线(曲线)的绘制
这段代码用于绘制一个螺旋状3D曲线,结果如下:
3、绘制3D轮廓
绘制结果如下:
4、绘制3D直方图
绘制结果如下:
5、绘制3D网状线
绘制结果如下:
6、绘制3D三角面片图
绘制结果如下:
7、绘制3D散点图
绘制结果如下:
以上是关于python的matplotlib绘制动态图形(用animation中的FuncAnimation)的主要内容,如果未能解决你的问题,请参考以下文章
Python图形绘制:如何用Matplotlib和pandas绘图?
Python-matplotlib绘制带箭头x-y坐标轴图形