本文主要是介绍matploylib循环绘制动态图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
# _*_ coding: utf-8 _*_"""
python_visual_animation.py by xianhu
"""import numpy as np
import matplotlib
import matplotlib.pyplot as plt
import matplotlib.font_manager as fm
from mpl_toolkits.mplot3d import Axes3D# 解决中文乱码问题
myfont = fm.FontProperties(fname="/Library/Fonts/Songti.ttc", size=14)
matplotlib.rcParams["axes.unicode_minus"] = Falsedef simple_plot():"""simple plot"""# 生成画布plt.figure(figsize=(8, 6), dpi=80)# 打开交互模式plt.ion()# 循环for index in range(100):# 清除原有图像plt.cla()# 设定标题等plt.title("动态曲线图", fontproperties=myfont)plt.grid(True)# 生成测试数据x = np.linspace(-np.pi + 0.1*index, np.pi+0.1*index, 256, endpoint=True)y_cos, y_sin = np.cos(x), np.sin(x)# 设置X轴plt.xlabel("X轴", fontproperties=myfont)plt.xlim(-4 + 0.1*index, 4 + 0.1*index)plt.xticks(np.linspace(-4 + 0.1*index, 4+0.1*index, 9, endpoint=True))# 设置Y轴plt.ylabel("Y轴", fontproperties=myfont)plt.ylim(-1.0, 1.0)plt.yticks(np.linspace(-1, 1, 9, endpoint=True))# 画两条曲线plt.plot(x, y_cos, "b--", linewidth=2.0, label="cos示例")plt.plot(x, y_sin, "g-", linewidth=2.0, label="sin示例")# 设置图例位置,loc可以为[upper, lower, left, right, center]plt.legend(loc="upper left", prop=myfont, shadow=True)# 暂停plt.pause(0.1)# 关闭交互模式plt.ioff()# 图形显示plt.show()returnsimple_plot()
这篇关于matploylib循环绘制动态图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!