作者KSJ (阿真)
看板Python
標題Re: [問題] dynamically connect lines
時間Thu Jul 19 17:25:31 2012
希望沒錯 請參考
def
連線(前端點,後端點):
把前後端點連起來
def
狼幾哭塔一加二(點,參數):
計算後
return 新點、新參數
def
即時畫圖(一堆參數):
前端點 = 初始第一個點
前參數 = 初始第一個參數
後端點 = 先隨便給
後參數 = 也隨便給
for 每一次 in 好幾次算後端點:
後端點,後參數 =
狼幾哭塔一加二(前端點,前參數)
if 每二十次:
連線(前端點,後端點)
前端點,前參數 = 後端點,後參數
※ 引述《WalterbyJeff (Spark Of Insanity)》之銘言:
: 我可以靜態的生產一組array之後把所有點給描出來,或是把點依據先後次序連起來
: 但是如果要動態的生產,我現在只知道scatter這個指令可以動態生產點
: (邊算邊跑出新的座標)
: 但如果我需要邊算邊連(connecting dots while generating new dots)
: 目前只有想到很簡單的一招
: def realtimeplot(m,n,d_n):
: for i in range(0,m):
: n=vector.rungekutta1(n, d_n)
: #生產點座標
: d_n=vector.rungekutta2(n, d_n)
: #算出來的點坐標每20個打一個點在圖上(減少被圖像處理拖慢的速度)
: if (i%20) == 0:
: x2 = n[0]
: y2 = n[1]
: z2 = n[2]
: #第二個打出來的點
: if (i%40) == 0:
: x3 = n[0]
: y3 = n[1]
: z3 = n[2]
: #把這兩個點連起來
: ax.plot([x2,x3],[y2,y3],[z2,z3],color='#817339',marker='.')
: matplotlib.pyplot.show()
: 所以現在我的問題是:如何把第二個點連到下一個第一個點
: 而不會都是不連續的線段,變成 ─ ─ ─ ─ ─
: 希望的是 ─────
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.63.202
→ WalterbyJeff:is the same as my def of drawstaticplot, it shows 07/19 18:32
→ WalterbyJeff:static plot rather than dynamic plot. 07/19 18:33
推 WalterbyJeff:thanks anyway~~ 07/20 00:12
→ KSJ:Is that static plot? 07/20 13:10
→ KSJ:Please read what I say before carefully 07/20 13:14
→ KSJ:and, you're welcome anyway~~ 07/20 13:15
推 WalterbyJeff:不知道是不是我哪裡有搞錯,不過上面的swf檔是畫點 07/20 20:03
→ WalterbyJeff:沒有包含連線...還有我沒看懂新參數那是要幹嘛,如果 07/20 20:03
→ WalterbyJeff:是我本來的d_n的話,其實那是速度,之後可能也會用到 07/20 20:04
→ WalterbyJeff:(意思是那不是i,j,k之類的參數)那樣的話我確實畫出來 07/20 20:05
→ WalterbyJeff:的是靜態的圖而不是動態的 07/20 20:05
推 WalterbyJeff:我爬文好想有我需要的...zip 07/20 20:07
→ WalterbyJeff:好像.. 07/20 20:08
→ KSJ:我貼你的code的 我只是要問那樣swf算動畫嗎? 畫點畫線不是很 07/20 20:52
→ KSJ:其實也不是很重要... 07/20 20:52
推 WalterbyJeff:算! 恩...那算是我額外的嘗試吧,本來是跑出來就好了 07/20 21:39
→ WalterbyJeff:這樣算是沒問題了,謝~ 07/23 22:22