Python bietet sich sehr gut für die Auswertung von Daten an. Es gibt viele praktische Pakete die Einlesen, Fitten und Plotten unkompliziert ermöglichen. In diesem Video werde ich euch die Grundlagen an die Hand geben mit denen ihr euch austoben könnt.
Timestamps:
0:00 Einleitung
0:13 Pakete
0:34 Einlesen
2:14 Fitten
5:05 Plotten
9:59 Beispiel
Jupyter Lab installieren: • How to Install Jupyter Notebooks 2021
Datensätze: https://drive.google.com/drive/folder...
Code ----------------------
#Pakete_Importieren
import numpy as np
from scipy.optimize import curve_fit
import matplotlib.pyplot as plt
import matplotlib as mpl
#Daten_einlesen
Daten = np.loadtxt('Messdaten.csv',delimiter=',', skiprows=1)
X = Daten[:,0]
Y = Daten[:,1]
Xerr = Daten[:,2]
Yerr = Daten[:,3]
plt.plot(X,Y,marker='x',linestyle = 'none')
#Fitfunktion
def fitFunktion(x,a,b,c):
return a/(1+np.exp(-b*(x-c)))
fitParameter, fehlerMatrix = curve_fit(fitFunktion, X, Y, [120,0,2])
for i in range(len(fitParameter)):
print('Parameter',i+1,':',fitParameter[i],'+-', np.sqrt(fehlerMatrix[i][i]))
a,b,c = fitParameter
xFunk = np.linspace(np.min(X),np.max(X),100)
yFunk = fitFunktion(xFunk,a,b,c)
plt.plot(xFunk,yFunk)
plt.plot(X,Y,marker='x',linestyle = 'none')
plt.show()
#Visualisierung
fig, ax = plt.subplots()
plt.errorbar(X,Y,xerr=Xerr,yerr=Yerr,marker = 'o',linestyle = 'none')
plt.plot(xFunk,yFunk,linestyle = 'dashed',color = 'gray')
plt.title('Glühkathode')
ax.set_xlabel('Heizstrom in A')
ax.set_ylabel('Emissionsstrom in µA')
plt.legend(['Messdaten','Fit'])
ax.tick_params(axis="x", direction='in', length=4)
ax.tick_params(axis="y", direction='in', length=4)
mpl.rcParams['xtick.top'] = True
mpl.rcParams['ytick.right'] = True
ax.grid(linestyle='dashed', linewidth=0.4)
plt.savefig('Diagramm.png', dpi=300)
plt.show()
------------------------------
Ich hoffe ich konnte euch weiterhelfen. Fragen, Anmerkungen und Vorschläge gerne in die Kommentare.
Информация по комментариям в разработке