O objetivo é demonstra no gráfico de Toranja como se comporta quando se tem um bom coeficiente angular contra o pior coeficiente angular gerado aleatoriamente.
# Definindo Valores para Calcular os Coeficiente da Reta
Y = peso_toranja
x = diametro_toranja
n = np.size(peso_toranja)
# Definindo os Valores Aleatórios para Coeficiente Angular
coef_angulares = np.random.uniform(low=0.5,high=100,size=np.size(peso_toranja))
coef_angulares.size
# Definindo o Valor para o parâmetro b
b=17
"""y=coef_angulares*x+b"""
# Calculando os desvios entre os pontos estimados e o real
residuos_coeficiente = np.array([])
for i in range(len(coef_angulares)):
y = coef_angulares[i]*x+b
norma = np.linalg.norm(Y-y)
residuos_coeficiente = np.append(residuos_coeficiente,norma)
# Obtendo o maior e o menor valor com base no desvio
menor_valor = np.min(residuos_coeficiente)
menor_valor
maior_valor = np.max(residuos_coeficiente)
maior_valor
# Obtendo os índices que esses valores se encontram no array dos coeficientes
menor_indice = np.argmin(residuos_coeficiente)
menor_indice
maior_indice = np.argmax(residuos_coeficiente)
maior_indice
# Obtendo os pontos de estimados do menor e o maior coeficiente
y1 = coef_angulares[menor_indice]*x+b
y2 = coef_angulares[maior_indice]*x+b
# Criando o gráfico
plt.figure(figsize=(8, 6))
plt.plot(x, Y, label='Toranja', marker='s', color='orange', linestyle='-', alpha=0.7)
plt.plot(x,y1, label='Menor Coeficiente', marker='x', color='red', linestyle='-', alpha=0.7)
plt.plot(x,y2, label='Maior Coeficiente', marker='o', color='blue', linestyle='-', alpha=0.7)
# Adicionar rótulos, título e legenda
plt.xlabel('Diâmetro (cm)')
plt.ylabel('Peso (g)')
plt.title('Peso em função d Diâmetro de Toranjas')
plt.legend()
plt.grid(True, linestyle='--', alpha=0.6)
# Mostrar o gráfico
plt.tight_layout()
plt.show()