优秀的编程知识分享平台

网站首页 > 技术文章 正文

python实现实时绘制数据(python数据可视化之美:专业图表绘制指南(全彩))

nanyue 2024-07-23 13:42:04 技术文章 11 ℃

方法一

import matplotlib.pyplot as plt

import numpy as np

import time

from math import *

plt.ion() #开启interactive mode 成功的关键函数

plt.figure(1)

t = [0]

t_now = 0

m = [sin(t_now)]

for i in range(2000):

	plt.clf() #清空画布上的所有内容

    t_now = i*0.1

    t.append(t_now)#模拟数据增量流入,保存历史数据

    m.append(sin(t_now))#模拟数据增量流入,保存历史数据

    plt.plot(t,m,'-r')

    plt.draw()#注意此函数需要调用

    time.sleep(0.01)

如果出不了动态效果,就将

plt.draw()

time.sleep(0.01)

替换为:

plt.pause(0.01)

方法二

import matplotlib.pyplot as plt
import numpy as np
import time
from math import *

plt.ion() #开启interactive mode 成功的关键函数
plt.figure(1)
t = [0]
t_now = 0
m = [sin(t_now)]

for i in range(2000):
	# plt.clf() # 清空画布上的所有内容。此处不能调用此函数,不然之前画出的点,将会被清空。
    t_now = i*0.1
    """
    由于第次只画一个点,所以此处有两种方式,第一种plot函数中的样式选
    为点'.'、'o'、'*'都可以,就是不能为线段'-'。因为一条线段需要两
    个点才能确定。第二种方法是scatter函数,也即画点。
    """
    plt.plot(t_now,sin(t_now),'.') # 第次对画布添加一个点,覆盖式的。
    # plt.scatter(t_now, sin(t_now)) 

    plt.draw()#注意此函数需要调用
    time.sleep(0.01)

Tags:

最近发表
标签列表