24小时热门版块排行榜    

查看: 716  |  回复: 2

tieer

木虫 (正式写手)

[求助] 求助python的一个作图问题

想要的结果是两个列表中不断加入新记录的数据(x,y),然后做出来的图能刷新。
其中作图的部分可以简化成下面的代码段,但是不知道为什么,开始运行后不去操作电脑还行,那个出图的窗口点一下就会卡死成为未响应,有高手知道是为什么吗?
CODE:
import matplotlib.pyplot as plt
import time

x=range(0,10)
y=range(0,10)
plt.ion()
for i in range(10,50,2):
    plt.plot(x,y,'gx-')
    plt.draw()
    x.append(i)
    y.append(i)
    time.sleep(5)

回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

思考,让这个世界更有趣。
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
tieer: 金币+10, ★★★★★最佳答案 2013-08-08 09:20:11
matplotlib的interactive mode是挺愁人的.别用了,自己pause一下就可以了,另外尽量不要draw,画完之后统一show一次就行.下面的代码测试过了.
CODE:
import matplotlib.pyplot as plt
x=range(0,10)
y=range(0,10)
for i in range(10,50,2):
    plt.plot(x,y,'gx-')
    plt.pause(0.001)
    x.append(i)
    y.append(i)
plt.show()

matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
2楼2013-08-07 22:19:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tieer

木虫 (正式写手)

引用回帖:
2楼: Originally posted by libralibra at 2013-08-07 22:19:04
matplotlib的interactive mode是挺愁人的.别用了,自己pause一下就可以了,另外尽量不要draw,画完之后统一show一次就行.下面的代码测试过了.

import matplotlib.pyplot as plt
x=range(0,10)
y=range(0,10)
fo ...

呵呵,谢谢啦,两个帖子你都回复了。
就是在纠结前面问过的那个串口数据采集的事情,数据采集什么的都做好了,但是又想能实时的看到数据的变化,所以就卡这儿的,这些总算是搞定了,谢谢。
思考,让这个世界更有趣。
3楼2013-08-08 09:21:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 tieer 的主题更新
信息提示
请填处理意见