La idea es hacer una red cuadrada desordenada.
- Comenzamos con un programa que ya conocemos
from random import * import matplotlib.pyplot as plt import numpy as np N=10 xv = np.zeros(N) yv = np.zeros(N) for i in range(0,N): x=random() xv[i]=x print(x) print(xv) plt.grid() plt.plot(xv,yv,'o') plt.show()

2. Ahora ubicamos esos puntos entre [0:1] Usando https://jupyter.org/try-jupyter/lab/
from random import * import matplotlib.pyplot as plt import numpy as np N=10 xv = np.zeros(N) yv = np.zeros(N) for i in range(0,N): x=-0.5+random() xv[i]=x print(x) print(xv) plt.grid() plt.plot(xv,yv,'o') plt.show()

3) Graficar en el pano (x,y) puntos aleaotorios entre [-0.5:0.5] en ambas direcciones
from random import * import matplotlib.pyplot as plt import numpy as np N=10 xv = np.zeros(N) yv = np.zeros(N) for i in range(0,N): x=-0.5+random() y=-0.5+random() xv[i]=x yv[i]=y plt.grid() plt.plot(xv,yv,'o') plt.show()

4)Visualizar los siguientes puntos

Primero vamos a hacer un programa que nos de todos los puntos
for ix in range(-1,2):
for iy in range(-1,2):
print(ix,iy)
-1 -1 -1 0 -1 1 0 -1 0 0 0 1 1 -1 1 0 1 1
Vamos a hacer un vector x y un vector y.
from random import * import matplotlib.pyplot as plt import numpy as np N=9 x=np.zeros(N) y=np.zeros(N) ic=0 for ix in range(-1,2): for iy in range(-1,2): x[ic]=ix y[ic]=iy ic=ic+1 print(x) print(y) plt.grid() plt.plot(x,y,'o')

5) Visualizar todos los puntos entre [-5:5] para x y y
from random import * import matplotlib.pyplot as plt import numpy as np N1=5 N2=(2*N1+1)*(2*N1+1) x=np.zeros(N2) y=np.zeros(N2) ic=0 for ix in range(-N1,N1+1): for iy in range(-N1,N1+1): x[ic]=ix y[ic]=iy ic=ic+1 print(x) print(y) plt.grid() plt.plot(x,y,'o')

Podemos ajustar los ejes
from random import *
import matplotlib.pyplot as plt
import numpy as np
N1=5
N2=(2*N1+1)*(2*N1+1)
x=np.zeros(N2)
y=np.zeros(N2)
ic=0
for ix in range(-N1,N1+1):
for iy in range(-N1,N1+1):
x[ic]=ix
y[ic]=iy
ic=ic+1
print(x)
print(y)
plt.axis('square')
plt.xlim(-N1-1,N1+1)
plt.ylim(-N1-1,N1+1)
plt.grid()
plt.plot(x,y,'o')

6) Como incluimos el desorden?
Considere el siguiente programa
x=0 y=0 plt.grid() plt.plot(x,y,'o')

Ahora considere el programa
x=0 y=0 x=x-0.5+random() y=y-0.5+random() plt.grid() plt.xlim(-1,1) plt.ylim(-1,1) plt.plot(x,y,'o')

from random import * import matplotlib.pyplot as plt import numpy as np for ic in range(0,1000): x=0 y=0 x=x-0.5+random() y=y-0.5+random() plt.xlim(-1,1) plt.ylim(-1,1) plt.grid() plt.plot(x,y,'.b')

from random import * import matplotlib.pyplot as plt import numpy as np porcentaje=0.5 for ic in range(0,100): x=0 y=0 x=x+porcentaje*(-0.5+random()) y=y+porcentaje*(-0.5+random()) plt.xlim(-1,1) plt.ylim(-1,1) plt.grid() plt.plot(x,y,'.b')

7) Meter desorden en la red 2d
from random import *
import matplotlib.pyplot as plt
import numpy as np
porcentaje=1.0
N1=5
N2=(2*N1+1)*(2*N1+1)
x=np.zeros(N2)
y=np.zeros(N2)
ic=0
for ix in range(-N1,N1+1):
for iy in range(-N1,N1+1):
x[ic]=ix
y[ic]=iy
x[ic]=x[ic]+porcentaje*(-0.5+random())
y[ic]=y[ic]+porcentaje*(-0.5+random())
ic=ic+1
plt.axis('square')
plt.xlim(-N1-1,N1+1)
plt.ylim(-N1-1,N1+1)
plt.grid()
plt.plot(x,y,'.b')

8) Graficas multiples
from random import *
import matplotlib.pyplot as plt
import numpy as np
figure, axis = plt.subplots(2, 2)
porcentaje=0.0
N1=5
N2=(2*N1+1)*(2*N1+1)
x=np.zeros(N2)
y=np.zeros(N2)
ic=0
for ix in range(-N1,N1+1):
for iy in range(-N1,N1+1):
x[ic]=ix
y[ic]=iy
x[ic]=x[ic]+porcentaje*(-0.5+random())
y[ic]=y[ic]+porcentaje*(-0.5+random())
ic=ic+1
#axsi[0,0].plt.axis('square')
#plt.xlim(-N1-1,N1+1)
#plt.ylim(-N1-1,N1+1)
#plt.grid()
axis[0,0].plot(x,y,'.b')
axis[0, 0].set_title("0% de desorden")
plt.show()

from random import *
import matplotlib.pyplot as plt
import numpy as np
figure, axis = plt.subplots(2, 2)
#################################################
porcentaje=0.0
N1=5
N2=(2*N1+1)*(2*N1+1)
x=np.zeros(N2)
y=np.zeros(N2)
ic=0
for ix in range(-N1,N1+1):
for iy in range(-N1,N1+1):
x[ic]=ix
y[ic]=iy
x[ic]=x[ic]+porcentaje*(-0.5+random())
y[ic]=y[ic]+porcentaje*(-0.5+random())
ic=ic+1
#axsi[0,0].plt.axis('square')
#plt.xlim(-N1-1,N1+1)
#plt.ylim(-N1-1,N1+1)
#plt.grid()
axis[0,0].plot(x,y,'.b')
axis[0, 0].set_title("0% de desorden")
###############################################
#################################################
porcentaje=0.25
N1=5
N2=(2*N1+1)*(2*N1+1)
x=np.zeros(N2)
y=np.zeros(N2)
ic=0
for ix in range(-N1,N1+1):
for iy in range(-N1,N1+1):
x[ic]=ix
y[ic]=iy
x[ic]=x[ic]+porcentaje*(-0.5+random())
y[ic]=y[ic]+porcentaje*(-0.5+random())
ic=ic+1
#axsi[0,0].plt.axis('square')
#plt.xlim(-N1-1,N1+1)
#plt.ylim(-N1-1,N1+1)
#plt.grid()
axis[0,1].plot(x,y,'.b')
axis[0, 1].set_title("25% de desorden")
###############################################
#################################################
porcentaje=0.50
N1=5
N2=(2*N1+1)*(2*N1+1)
x=np.zeros(N2)
y=np.zeros(N2)
ic=0
for ix in range(-N1,N1+1):
for iy in range(-N1,N1+1):
x[ic]=ix
y[ic]=iy
x[ic]=x[ic]+porcentaje*(-0.5+random())
y[ic]=y[ic]+porcentaje*(-0.5+random())
ic=ic+1
#axsi[0,0].plt.axis('square')
#plt.xlim(-N1-1,N1+1)
#plt.ylim(-N1-1,N1+1)
#plt.grid()
axis[1,0].plot(x,y,'.b')
axis[1, 0].set_title("50% de desorden")
###############################################
#################################################
porcentaje=1.0
N1=5
N2=(2*N1+1)*(2*N1+1)
x=np.zeros(N2)
y=np.zeros(N2)
ic=0
for ix in range(-N1,N1+1):
for iy in range(-N1,N1+1):
x[ic]=ix
y[ic]=iy
x[ic]=x[ic]+porcentaje*(-0.5+random())
y[ic]=y[ic]+porcentaje*(-0.5+random())
ic=ic+1
#axsi[0,0].plt.axis('square')
#plt.xlim(-N1-1,N1+1)
#plt.ylim(-N1-1,N1+1)
#plt.grid()
axis[1,1].plot(x,y,'.b')
axis[1, 1].set_title("100% de desorden")
###############################################
plt.show()
