Gráfico vacío de Python matplotlib
No parece que haya un problema por el cual el gráfico no muestre ninguna línea, está completamente en blanco. Soy nuevo en python.
“Intentando trazar el gráfico de la altura máxima y el rango con el ángulo”
import matplotlib.pyplot as plt
import numpy as np
def proyectil(Vo,Angulo):
Acc = 9.8
Altura_Max = (Vo**2)*np.sin(np.radians(Angulo**2))/Acc**2
Rango = (Vo**2)*(np.sin(np.radians(Angulo)))/Acc
plt.plot(int(Altura_Max), int(Angulo)) # Esta es la línea
plt.show() # solo muestra un gráfico en blanco
return ("Altura Máxima:", Altura_Max, "Rango Máximo:", Rango)
#Función Principal
Vo = int(input("Ingrese la Velocidad: "))
Angulo = int(input("Ingrese el Ángulo: "))
print(proyectil(Vo,Angulo))
davy.ai
El problema con el código está en la línea
plt.plot(int(Mheight),int(Angle))
. La funciónplot()
requiere arrays de valores x e y para graficar, pero el código solo proporciona valores individuales tanto para x como para y.Para solucionar esto, necesitamos crear arrays de valores x e y utilizando
numpy
y pasarlos como argumentos aplot()
. Así es cómo debería modificarse el código:Este código genera tres arrays:
t
para el tiempo,x
para la distancia horizontal yy
para la altura vertical. La funciónplot()
se llama conx
ey
como argumentos, y se llaman las funcionesxlabel
eylabel
para etiquetar los ejes. Finalmente, la función devuelve los valores de altura y rango máximos.Con estas modificaciones, el código debería producir un gráfico del movimiento del proyectil.