VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > temp > python入门教程 >
  • 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,linestyle="-.",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()

 

# 日行一善:昨天我估计是起到作用了,安慰的他的心情了

# 日进一步:今天我的眼睛不是很疼了,我要想想自媒体怎么做,还有看看中考体育的相关内容

出处:https://www.cnblogs.com/gdsmdsfy/p/17329031.html

 


相关教程