Como hacer una gráfica de datos en Python

Programa realizado en el cual se hace una gráfica de datos en Python, para lo cual se seleccionan esos datos para obtener sus promedios y rangos, y de ahí obtener su Limite de Control Inferior y su Limite de Control Superior, además de que gráfica cada uno de estos datos.

Código para realizar una gráfica de datos en Python

gráfica de datos en Python

Inicialización del código en Python

from pylab import * 

En la sección anterior simplemente se encuentra la librería que se necesita para poder hacer una gráfica de datos en Python.

L=int(input("Dame el numero de muestras: "))
N=int(input("Dame el numero de lecturas en cada prueba: "))
a=[]

En la sección anterior se hace una matiz en la cual se piden las filas y las columnas para realizar la gráfica de datos en Python.

for F in range(L):
 a.append([0]*N) 
for i in range(L):
 for j in range(N ):
  a[i][j]=int(input("dame el valor de la lectura %d de la muestra %d: "%(j+1,i+1)))
print()

En la sección anterior se pide cada uno de los valores para almacenarlos en la lista a.

for M in range(L):
 print(M+1, a[M])
print()

En la sección anterior se imprime la matriz por medio del uso de print en Python, ya con los datos seleccionados para que aparezca en forma de tabla.

👊 ¿QUIERES INCREMENTAR TUS CONOCIMIENTOS EN PYTHON? 👊

Entonces te recomiendo tomar este curso de Python donde aprenderás a programar desde cero hasta convertirte en un experto, realizando varios ejercicios prácticos para que puedas aprender de una mejor manera.

👇

Calculo de los promedios en Python

prom=[]
for k in range(L):
 p=np.sum(a[k])/N
 prom.append(p)

En la sección anterior se calculan los promedios y se hace uso de la función sum, que sirve para sumar todos los valores que están contenidos en la matriz.

print("Promedios: ",prom)
print()

En la sección anterior imprime la lista prom, la cual contiene los promedios de cada columna

promfinal=[]
for l in range(N):
 promf=sum(prom)/L
for n in range(L): 
 promfinal.append(promf)

En la sección anterior se calcula el promedio total tomando en cuanta todos los promedios anteriores, ademas de que se guardan los valores en una matriz para que después se pueda hacer la gráfica de datos en Python.

for l in range(N):
 promf=sum(prom)/L
print("Promedio: ",promf)
print()

En la sección anterior se imprime el promedio final de los valores.

Calculo de los rangos, máximos y mínimos

trangos=[]
for s in range(L):
 rang=(np.max(a[s]))-(np.min(a[s]))
 trangos.append(rang)
print("Rangos: ",trangos)
print() 

En la sección anterior se calculan los rangos de la serie de valores, también se hace uso de las funciones min y max para obtener los máximos y mínimos de la matriz seleccionada.

promediorango=[]
for u in range(N):
 promr=sum(trangos)/L
for z in range(L):
 promediorango.append(promr)

En la sección anterior se calcula el promedio de todos los rangos anteriores, ademas de que se agregan a una matriz para posteriormente realizar la gráfica de datos en Python.

for u in range(N):
 promr=sum(trangos)/L
print("Promedio: ",promr)
print()  

En la sección anterior se imprime el rango final de los datos.

Creación de los datos para la gráfica

AA2=[0,0,1.880,1.023,0.729,0.577,0.483,0.419,0.373,0.377,0.308,0.285,0.266,0.249,0.235,0.223]
DD3=[0,0,0,0,0,0,0,0.076,0.136,0.184,0.223,0.256,0.284,0.308,0.329,0.348]
DD4=[0,0,3.268,2.574,2.282,2.114,2.004,1.924,1.864,1.816,1.777,1.744,1.717,1.692,1.671,1.652]
dd2=[0,0,1.128,1.693,2.059,2.326,2.534,2.704,2.847,2.970,3.078,3.173,3.258,3.336,3.407,3.472]

En la sección anterior se declaran varias listas con datos provenientes de los datos que se quieren realizar una gráfica de datos en Python.

print("A2",AA2)
print("D3",DD3)
print("D4",DD4)
print("d2",dd2)
print()

En la sección anterior simplemente se imprimen los datos que se guardaron en la parte anterior, para poder tenerlos en la terminal de Python, ademas de la gráfica de datos en Python.

👀 Recuerda que si quieres aprender más de este lenguaje de programación, puedes acceder a este Curso de Python donde se explica paso a paso cómo aprender este lenguaje de una manera eficiente.

👇

Calculo del LCS y LCI

LCIpro=[]
LCSpro=[]
LCIran=[]
LCSran=[]

LCIp=(promf)-(AA2[N])*(promr)
LCSp=(promf)+(AA2[N])*(promr)
LCIr=(DD3[N])*(promr)
LCSr=(DD4[N])*(promr)

print("LCI promedio: ",LCIp)
print("LCI rango:",LCIr)
print("LCS promedio: ",LCSr) 
print("LCS rango: ",LCSp)

En la sección anterior se realizan las formulas para obtener los LCI y LCS respectivos, basándose en los valores de cada lista, ademas de qué se imprimen esos datos.

for XX in range(0,L): 
 LCIpro.append(LCIp)
for yy in range(0,L):
 LCSpro.append(LCSp)
for XX in range(0,L): 
 LCIran.append(LCIr)
for yy in range(0,L):
 LCSran.append(LCSr)      

En la sección anterior se agregan a las lista los valores de LCS y LCI para poder realizar la gráfica de datos en Python después.

Hacer la gráfica de datos en Python

plt.plot(prom,label="PROM",marker='D',color='m')
plt.plot(promfinal,label="X",marker='s',linestyle=':',color='g')
plt.plot(LCIpro,label="LCI",marker='D',linestyle='-',color='r')
plt.plot(LCSpro,label="LCS",marker='s',linestyle='-.',color='b')
plt.legend(loc="upper right")
plt.title("Promedios")
plt.xlabel("No. de Muestras")
plt.ylabel("Valor de resistencia")
plt.grid(True)
plt.show()    

En la sección anterior simplemente se declaran los datos de los cuales se va a hacer una gráfica de los promedios.

plt.plot(promediorango,label="R",marker='s',linestyle=':',color='g')
plt.plot(trangos,label="PROM",marker='D',color='m')
plt.plot(LCIran,label="LCI",marker='D',linestyle='-',color='r')
plt.plot(LCSran,label="LCS",marker='s',linestyle='-.',color='b')
plt.legend(loc="upper right")
plt.title("Promedios de Rangos")
plt.xlabel("No. de Muestras")
plt.ylabel("Valor de Rango")
plt.grid(True)
plt.show()   

En esta ultima sección se declaran los datos de los cuales se va a hacer una gráfica de los rangos de los datos.

Resultados del código para hacer una gráfica de datos en Python

A continuación se presentan los resultados obtenidos, en la primer imagen se aprecia que se imprimieron todos los valores que se incluyeron en la programación, en la segunda imagen se aprecia la gráfica de promedios de todos los datos y en la ultima imagen se aprecia la gráfica de rangos de todos los datos.

Valores obtenido con Python
Gráfica de valores en Python con promedios
Gráfica de valores en Python con rangos