Search
Random Walk
import vpython as vp
import random
random.seed(None)
jmax = 100
x = 0.0
y = 0.0
pts = vp.gcurve()
pts.plot(pos=(x,y))
         
for i in range(0, jmax+1):
    x += (random.random() - 0.5)*2
    y += (random.random() - 0.5)*2
    pts.plot(pos=(x,y))
    vp.rate(5)
%matplotlib widget
import matplotlib.pyplot as plt
import time
import numpy as np
fig, ax = plt.subplots()
line, = plt.plot([0], [0], '.-')
ax.set_xlim(-5,5)
ax.set_ylim(-5,5)
plt.show()
jmax = 100
x = 0.0
y = 0.0
plt.ion()

for i in range(0, jmax+1):
    x += (random.random() - 0.5)*2
    y += (random.random() - 0.5)*2
    xs, ys = line.get_data()
    xs = np.append(xs, [x])
    ys = np.append(ys, [y])
    line.set_data(xs, ys)
    time.sleep(.2)
    print(i)
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100