Quadratische Funktion plotten

mit matplotlib, NumPy, pandas, SciPy, SymPy und weiteren mathematischen Programmbibliotheken.
Antworten
Co5inus
User
Beiträge: 2
Registriert: Freitag 21. Dezember 2018, 19:32

Guten Abend!

Bin was Python angeht noch ein ziemlicher Anfänger, wollte zur Übung mir ein Skript schreiben, der mir eine quadratische Funktion plottet, die Nullstellen ausrechnet und den Scheitelpunkt.
Das Plotten sowie die Berechnung der Nullstellen und des Scheitelpunktes hat funktioniert. Dann dachte ich mir ich kann ja die berechneten Punkte mir im Plot auch als Punkte darstellen lassen.

Habe auch noch nicht wirklich eine Idee wie ich das Umsetzen kann.

Hier ist mein Code:

Code: Alles auswählen

# Plotten einer quadratischen Funtkion und ihren Scheitelpunktes


# Bibliothek importieren
import numpy as np
import matplotlib.pyplot as plt

# Eingabe der Funktion
print('Dieses Programm plottet signifikante Stellen einer Polynomfunktion')
print('f(x)=ax^2+bx+c')
print('Bitte Parameter eingeben')
a = float(input('Parameter a: '))
b = float(input('Parameter b: '))
c = float(input('Parameter c: '))
x_1 = float(input('Startwert eingebne: '))
x_2 = float(input('Endwert eingeben: '))
x_3 = int(input('Schrittweite eingeben: '))
x = np.linspace(x_1,x_2,x_3)

coeff_1 = [a,b,c]
nullstelle = np.roots(coeff_1)   #Berechnung der Nullstellen
y = a*x**2+b*x+c
coeff_2 = [2*a,b]          #Ableitung der Funktion
sp_x = np.roots(coeff_2)   #Scheitelpunkt X-Koordinate
sp_y = a*sp_x**2+b*sp_x+c  #Scheitelpunkt Y-Koordinate
sp = [sp_x, sp_y]
print('Die Nullstellen liegen bei: ')
print(nullstelle)
print('Der Scheitelpunkt liegt bei: ')
print(sp)
plt.plot(x,y)
plt.title('Polynom 2 Grades')
plt.xlabel('X - Achse')
plt.ylabel('Y - Achse')
plt.grid()
plt.show()

Vielen Dank im Vorraus.

MfG
Co5inus
User
Beiträge: 2
Registriert: Freitag 21. Dezember 2018, 19:32

Habe selber eine Lösung dazu gefunden! Hat sich somit erledigt.

Hier meine Lösung(Villt. hilft es ja jemanden auch :-))

Code: Alles auswählen

plt.plot([nullstelle[0],nullstelle[1]],[0,0],'bo') #Plotten der Nullstellen
plt.plot([sp[0]],[sp[1]],'bo') #Plotten des Scheitelpunktes
Antworten