Python 板


LINE

Is there anyone knows how to remove a line just after it showed up? I dynamically generate a bunch of dots via this ax.plot([x,0],[y,0],[z,0],color='#817339',marker='.') #x,y,z being continously updated So, I'll get a lot of lines from (0, 0, 0) to (x, y, z) now the question is: How do I remove those outdated lines? Or the whole 3D graph would be kind of messy after a while--- so many lines on the screen. thanks! PS. As for removing axis, it's pretty easy, just ax.axis("off") --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.36.28.49 ※ 编辑: WalterbyJeff 来自: 114.36.28.49 (07/16 00:13)
1F:→ KSJ:just google 'matplotlib delete line' 07/16 10:20
我之前有试过这两个指令 del ax.lines[0] ax.lines.pop(0) 但是我发觉我产生线段的那条必须要打两次,才不会一开始根本不会显示出来 我猜原因是时间太短,马上生出来又马上给拿掉了,所以没显示 而且就算用打两次还有其他问题,打两次产生线段的指令 line = ax.plot([x,0],[y,0],[z,0],color='#0000A0',marker='.') line = ax.plot([x,0],[y,0],[z,0],color='#0000A0',marker='.') ax.lines.pop(0) 会让图形跑到愈後面没消掉的线愈多,就像滑鼠设定延迟有一堆残影游标一样 ※ 编辑: WalterbyJeff 来自: 114.36.40.153 (07/17 22:30)
2F:→ KSJ:可以给个小小的概念程式码让我跑看看吗 感恩 07/17 22:54
#我把原来计算出新的位置向量 n 的演算法简化 import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D import numpy as np from numpy import * from pylab import * import pylab class vec(object): def __init__(self, x, y, z): self.vec=(x, y, z) def unit(self, vec): dist=math.sqrt(vec[0]**2+vec[1]**2+vec[2]**2) u=(vec[0]/dist,vec[1]/dist,vec[2]/dist) return u def plotlines(x ,y ,z): line = ax.plot([x,0],[y,0],[z,0],color='#0000A0',marker='.') #生产"线"的指令 ax.lines.pop(0) #删除线的指令 #如果加上这条,3D影像的图还是会跑(背景的尺寸一直在变) 但是线看不到,如果生产线的指令加两条,就看得到,很美好的 跑一个删一个,但跑一小段时间之後,延迟没删掉的线就会愈来愈多 我甚至还很疯狂的把生产线的指令弄成k个,删除的弄成k-1个 这种显示一个删一个的状况就能拖久一点,但是最後还是... ax.set_xlabel('X-axis') ax.set_ylabel('Y-axis') ax.set_zlabel('Z-axis') #del ax.lines[0] #这条我先注解掉,状况也跟上面一样 matplotlib.pyplot.show() def drawdynamicplot(m,n,d_n): for i in range(0,m): #n=vector.rungekutta1(n, d_n) #d_n=vector.rungekutta2(n, d_n) x1 = sin(n[0] - .5*i) y1 = cos(n[1]+.1*i) z1 = sin(n[2] - i**3) n= (x1,y1,z1) n=vector.unit(n) print n if i%25 == 0: print "-----------------------------" plotlines(n[0],n[1],n[2]) fig = plt.figure() ax = fig.add_subplot(111, projection='3d') vector=vec(1,2,3) n=(1.0,1.0,1.0) d_n=(1.0,-1.0,0.0) ion() m=10000 xarray=[] yarray=[] zarray=[] drawdynamicplot(m,n, d_n) --- 先谢谢了~~ ※ 编辑: WalterbyJeff 来自: 114.36.40.153 (07/17 23:57)
3F:→ KSJ:一直show不行 强迫要先画请用draw 07/19 17:04
4F:→ KSJ:还有如果画两次线段 也要移掉二条线段啊~ 不移一定多一条 07/19 17:28
5F:→ KSJ:对了 如果可以的话 下次贴长code 可以贴连结 07/19 17:30
6F:→ KSJ:比较方便 例如http://ideone.com/ 感恩 07/19 17:31
7F:→ WalterbyJeff:谢了~ 完整的程式码(不过我数学模型还在修改) 07/19 17:35
8F:→ WalterbyJeff:http://ideone.com/0odwC 07/19 17:35







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Soft_Job站内搜寻

TOP