python画图合并图例_matplot 动态绘图,如何只清除重绘的图例?
#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time: 18/2/26 下午12:52# @Author: AlexZ33# @File:# @Desc:import numpy as npimport matplotlibimport matplotlib.pyplot as pltimport matplotlib....
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 18/2/26 下午12:52
# @Author : AlexZ33
# @File :
# @Desc :
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='/home/zk/study/python_lessions/DataVisualiztion/Library/Fonts/simsun.ttc', size=14)
matplotlib.rcParams["axes.unicode_minus"] = False
def simple_plot():
"""
simple plot
:return:
"""
#生成画布
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 + 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()
return
if __name__ == '__main__':
simple_plot()
在绘制前plt.cla()会把之前绘制的线清除掉

删除 plt.cla()就是这样的效果,图例多次绘制

如何只清除图例又不影响cos ,sin 动态绘制
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)