python绘制动态曲线教程
作者:淮南草 发布时间:2023-01-20 08:24:33
标签:python,动态,曲线
从txt种获取数据 并且通过动态曲线显示
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
import time
# Fixing random state for reproducibility
np.random.seed(196)
path = "feed.txt"
file = open(path, 'r')
data = []
for line in file.readlines():
lineArr = line.strip().split()
data.append(int(lineArr[0]))
xdata = np.arange(0,len(data))
#初始数据绘图
dis = np.zeros(40)
dis2 = dis
fig, ax = plt.subplots()
line, = ax.plot(dis)
ax.set_ylim(0, 100)
plt.grid(True)
ax.set_ylabel("distance: m")
ax.set_xlabel("time")
def update(frame):
global dis
global dis2
global line
#读入模拟
a = frame
time.sleep(np.random.rand()/10)
#绘图数据生成
dis[0:-1] = dis2[1:]
dis[-1] = a
dis2 = dis
#绘图
line.set_ydata(dis)
#颜色设置
plt.setp(line, 'color', 'b', 'linewidth', 2.0)
return line
ani = animation.FuncAnimation(fig, update,frames=data, interval=10)
plt.show()
输出:
补充拓展:Python绘制mes曲线实例
mes曲线:累计误差曲线。一般用于测试生成的关键点与标定的关键点间的差异情况,差异一般是指两点间的欧氏距离。
标记点坐标 p_g(x,y)
预测点坐标 p_t(x,y)
dist(p_g,p_t)可以计算两点间的欧氏距离。
def dist(point1,point2):
return ((point1[0] - point2[0]) ** 2 + (point1[1] - point2[1]) ** 2) ** 0.5
在人脸的关键点检测中,dist()计算的距离/双眼间距离 进行归一化。将归一化后的值append到MSE,调用drawCDFSingle(MSE)即可看到累计误差曲线。
def drawCDFSingle(MSE):
plotDataset = [[], []]
plt.grid()
plt.xlabel("pixel error")
plt.ylabel("Fraction of number of landmarks")
plt.title('CDF')
for i in range(len(MSE[0])):
sumnum = 0
mse_point = [x[i] for x in MSE]
mse_point.sort()
plotDataset[0]=[]
plotDataset[1]=[]
for t in range(len(mse_point)):
plotDataset[0].append(float(t+1)/len(mse_point))
# sumnum=sumnum+float(mse_point[t])
plotDataset[1].append(float(mse_point[t]))
plt.plot(plotDataset[1],plotDataset[0] , color[i%len(color)]+linestyle[i%len(linestyle)], linewidth=2, label=i)
plt.legend() # make legend
plt.show()
来源:https://blog.csdn.net/zhuisaozhang1292/article/details/81634306


猜你喜欢
- 一、说明自己一是想跟上潮流二是习惯于直接干三是没有人可以请教,由于这三点经常搞得要死要活。之前只简单看过没写过Diango,没看过Djang
- 测试语法如下:powered by jb51.netexec GetRecordFromPage news,newsid,10,100000
- Rel-License 是微格式的开发标准之一,简单的说就是通过给引用标签(通常是链接)加上REL属性,来标明所引用链接/数据与文章的关系。
- 本文实例讲述了PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)。分享给大家供大家参考,具体如下:前言:深度优先遍历:对
- 由于工作需要,在做最优分箱的时候,始终写不出来高效的代码,所以就找到了R语言中的最优分箱的包,这个时候考虑到了在python中调用R语言,完
- 1、公式推导 对幂律分布公式:对公式两边同时取以10为底的对数:所以对于幂律公式,对X,Y取对数后,在坐标轴上为线性方程。2、可视化 从图形
- 下载,安装先检查系统中是否有mysql ,MariaDB,如有,先卸载rpm -qa | grep mysqlrpm -qa | grep
- 数据库读写分离对于大型系统或者访问量很高的互联网应用来说,是必不可少的一个重要功能。对于MySQL来说,标准的读写分离是主从模式,一个写节点
- 和C/C++、Java等语言一样,python在命名上也有一套约定俗成的规则,符合规范的命名可以让程序的可读性大大增加,从而使得代码的逻辑性
- 本文实例讲述了Python下载指定页面上图片的方法。分享给大家供大家参考,具体如下:#!/usr/bin/python #coding:ut
- 对于如何结束一个Python程序或者用Python操作去结束一个进程等,Python本身给出了好几种方法,而这些方式也存在着一些区别,对相关
- 【原文地址】 Tip/Trick: Supporting Full Screen Mode with Silverlight 【原文发表日期
- mssql的每个varchar、text字段都被自动插入一段js代码,即使删除这段代码,如果没有从源头上解决,几分钟后,js代码就又会自动插
- 一、下载MySQL首先,去数据库的官网http://www.mysql.com下载MySQL。点击进入后的首页如下: 然后点击do
- VSCode插件安装完成后,有些插件如果你想要完整的使用其中的功能得在settings.json中就行配置,接下来是我常用的一些配置{ &n
- 写入Excel中后有显示第一列客户款号总库存这些,开始写在第12行第一列开始写入,一行写入5个,然后再隔12行,再写入下边的数据,图片需要对
- 例子:def re_escape(fn): def arg_escaped(this, *args):&
- 用XMlhttp生成html页面,相关函数如下:<% ’定义xmlhttp function Get
- 在图片处理中,霍夫变换主要是用来检测图片中的几何形状,包括直线、圆、椭圆等。在skimage中,霍夫变换是放在tranform模块内,本篇主
- PYTHON 操作 XML读取XML文件关于XML的介绍<data> 与 </data> 是一对标签的开始与结束&l