sensor data
This commit is contained in:
33
sensor/analogFitter-Exponential.py
Normal file
33
sensor/analogFitter-Exponential.py
Normal file
@@ -0,0 +1,33 @@
|
||||
import numpy as np
|
||||
import matplotlib.pyplot as plt
|
||||
from scipy.optimize import curve_fit
|
||||
import pandas as pd
|
||||
|
||||
# Data from the chart
|
||||
data = pd.read_csv(r'C:\Users\k28ad\OneDrive\Documents\sensor\oldData\data.csv')
|
||||
x = data["x"].values
|
||||
y = data["y"].values
|
||||
|
||||
# Define a possible fitting model (exponential fit in this case)
|
||||
def exponential(x, a, b, c):
|
||||
return a * np.exp(b * x) + c
|
||||
|
||||
# Perform the curve fitting
|
||||
params, covariance = curve_fit(exponential, x, y)
|
||||
|
||||
# Plot the data and the fitting curve
|
||||
x_fit = np.linspace(2, 20, 100)
|
||||
y_fit = exponential(x_fit, *params)
|
||||
|
||||
plt.scatter(x, y, color='blue', label='Data points')
|
||||
plt.plot(x_fit, y_fit, color='red', label='Exponential fit')
|
||||
plt.xlabel('x')
|
||||
plt.ylabel('y')
|
||||
plt.legend()
|
||||
plt.title('Exponential Fit')
|
||||
plt.grid(True)
|
||||
plt.show()
|
||||
|
||||
# Output the fitted parameters
|
||||
print("Fitted parameters:")
|
||||
print(f"a = {params[0]}, b = {params[1]}, c = {params[2]}")
|
||||
Reference in New Issue
Block a user