4.8.2 Interpolar - Mascota descansando

Referencia: Burden 9th Ed. Ejercicio 32 p164

La parte superior de una mascota descansando se describe con los puntos presentados en la tabla.  Los puntos se usan para ejercicios de interpolación.

xiA = [1,2,5,6,7,8,10,13,17,20,23,24,25,27,27.7,28,29,30]

fiA = [3.0,3.7,3.9,4.2,5.7,6.6,7.1,6.7,4.5,7.0,6.1,5.6,5.8,5.2,4.1,4.3,4.1,3.0]
mascota descansando 01 png

otros perfiles

mascota descansando gráfica de puntos 02
# Perfil Superior de mascota
xiA = [1,2,5,6,7,8,10,13,17,20,23,24,25,27,27.7,28,29,30]
fiA = [3.0,3.7,3.9,4.2,5.7,6.6,7.1,6.7,4.5,7.0,6.1,5.6,5.8,5.2,4.1,4.3,4.1,3.0]

# Perfil inferior de mascota
xiB = [  1.05,  3.05,  5.2 ,  7.1 ,  8.55,  8.3 ,  7.95,  8.85, 10.75, 12.4,
        13.45, 14.45, 15.6 , 17.3 , 17.7 , 18.6 , 20.55, 22.3 , 23.6 , 24.25,
        24.95, 26.95, 27.6 , 28.15, 28.75, 29.25, 29.7 , 29.95]
fiB = [  2.95,  3.  , 2.85 , 2.75 ,  3.4 ,  2.9 ,  2.2 ,  1.7 , 2.05 , 1.7 ,
         1.9 ,  1.9 , 2.   , 1.9  ,  1.6 ,  1.75,  1.6 ,  1.25, 1.35 , 1.4 ,
         1.4 ,  2.  , 2.65 , 2.65 , 2.55 ,  2.9 ,  2.8 ,  3.1 ]

1.1 Algoritmo inicial para la gráfica de puntos por grupo mostrada

# taller de Interpolacion
# gráfica de puntos por grupos
import numpy as np

# INGRESO
titulo = 'mascota descansando'

# Perfil Superior de mascota
xiA = [1,2,5,6,7,8,10,13,17,20,23,24,25,27,27.7,28,29,30]
fiA = [3.0,3.7,3.9,4.2,5.7,6.6,7.1,6.7,4.5,7.0,6.1,5.6,5.8,5.2,4.1,4.3,4.1,3.0]

# Perfil inferior de mascota
xiB = [  1.05,  3.05,  5.2 ,  7.1 ,  8.55,  8.3 ,  7.95,  8.85, 10.75, 12.4,
        13.45, 14.45, 15.6 , 17.3 , 17.7 , 18.6 , 20.55, 22.3 , 23.6 , 24.25,
        24.95, 26.95, 27.6 , 28.15, 28.75, 29.25, 29.7 , 29.95]
fiB = [  2.95,  3.  , 2.85 , 2.75 ,  3.4 ,  2.9 ,  2.2 ,  1.7 , 2.05 , 1.7 ,
         1.9 ,  1.9 , 2.   , 1.9  ,  1.6 ,  1.75,  1.6 ,  1.25, 1.35 , 1.4 ,
         1.4 ,  2.  , 2.65 , 2.65 , 2.55 ,  2.9 ,  2.8 ,  3.1 ]

# todos los grupos
xi = [xiA,xiB]
fi = [fiA,fiB]
etiq = ['A','B']

# PROGRAMA
n = len(xi)
# convierte en arreglos cada grupo de datos
for j in range(0,n,1):
    xi[j] = np.array(xi[j],dtype=float)
    fi[j] = np.array(fi[j],dtype=float)

# SALIDA
print(titulo)

# GRAFICA ---------------------
import matplotlib.pyplot as plt

for j in range(0,n,1):
    plt.plot(xi[j],fi[j],'.', label=etiq[j])
    
# entorno de gráfica
plt.xlabel('xi')
plt.ylabel('fi')
plt.title(titulo)
plt.legend()
plt.grid()
plt.tight_layout()
plt.show()

Unidades MN