Plotten von Regressionsgeraden und Datenpunkten

mit matplotlib, NumPy, pandas, SciPy, SymPy und weiteren mathematischen Programmbibliotheken.
Antworten
UnicornsAreAwesome
User
Beiträge: 1
Registriert: Samstag 10. April 2021, 09:26

Hallo allerseits,
ist es möglich Punkte von einem Pandas Dataframe und eine Regressiongerade auf demselben Graphen zu zeichnen?

Aktuell habe ich ein Dataframe welches die Punkte schön in einem Scatterplot darstellt. Ich bekomme die Regressionsgerade aber irgendwie nicht auf den Plot.

Code: Alles auswählen

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

ausbildungsdauer = [9, 13, 15, 18, 20]
jahresgehalt = [18, 37, 61, 125, 59]

df = pd.DataFrame({'x': ausbildungsdauer, 'y': jahresgehalt})
df.plot('x', 'y', kind="scatter")

print("Der Korrelationskoeffizient beträgt: " + str(df.corr().iloc[0][1]))

m, b = np.polyfit(ausbildungsdauer, jahresgehalt, 1)
plt.plot(x, m*x + b)
plt.show()

print("m: " + str(m))
print("b: " + str(b))
Sirius3
User
Beiträge: 17703
Registriert: Sonntag 21. Oktober 2012, 17:20

Bei mir plottet das implizit in den selben Plot. Besser ist es aber, explizit eine Figure zu erzeugen und das Axis-Objekt per ax=... an df.plot zu übergeben.
Antworten