saving measurments to table available now
This commit is contained in:
parent
ad51e65228
commit
7650cd707c
@ -2,8 +2,6 @@ from scipy.optimize import curve_fit
|
||||
from numpy import tanh
|
||||
|
||||
|
||||
# Обсчет значений на данный момент недоступен, но может быть вызван в другом файле
|
||||
# с использованием функции fit()
|
||||
def probe(x, I_0, k_0, A):
|
||||
return I_0 * tanh(k_0 / I_0 * x) + A * x
|
||||
|
||||
|
@ -1,6 +1,8 @@
|
||||
from PySide6 import QtCore, QtWidgets, QtGui
|
||||
import plots
|
||||
import PIL
|
||||
import pandas as pd
|
||||
import fitting
|
||||
|
||||
|
||||
# Значения парметра part при построении графиков установлены на тестовый режим
|
||||
@ -154,12 +156,20 @@ class Part1(QtWidgets.QWidget):
|
||||
|
||||
@QtCore.Slot()
|
||||
def savefile(self):
|
||||
# при замене устройства директорию надо изменить
|
||||
file, check = QtWidgets.QFileDialog.getSaveFileName(None, "Сохранить график 1",
|
||||
r"C:\Users\Vadim\Desktop\plot1.jpg", "Images (*.png *.jpg)")
|
||||
r"C:\Users\Vadim\Desktop\plot1.jpg", "Images (*.png *.jpg)")
|
||||
if check:
|
||||
plot1 = PIL.Image.open('tmpplots/tmpplot3.jpg')
|
||||
plot1.save(file)
|
||||
|
||||
file, check = QtWidgets.QFileDialog.getSaveFileName(None, "Сохранить значения",
|
||||
r"C:\Users\Vadim\Desktop\experiment1.xlsx", "Table (.xlsx)")
|
||||
if check:
|
||||
data = {'U_р, В': plots.vol[2][0], 'I_р, мА': plots.cur[2][0]}
|
||||
df = pd.DataFrame(data)
|
||||
df.to_excel(file, index=False)
|
||||
|
||||
def hint(self):
|
||||
if not self.hint_open:
|
||||
self.text.show()
|
||||
@ -327,11 +337,37 @@ class Part2(QtWidgets.QWidget):
|
||||
|
||||
def save_file(self):
|
||||
file, check = QtWidgets.QFileDialog.getSaveFileName(None, "Сохранить график 2",
|
||||
r"C:\Users\Vadim\Desktop\plot2.jpg", "Images (*.png *.jpg)")
|
||||
r"C:\Users\Vadim\Desktop\plot2.jpg", "Images (*.png *.jpg)")
|
||||
if check:
|
||||
plot1 = PIL.Image.open('tmpplots/tmpplot4.jpg')
|
||||
plot1.save(file)
|
||||
|
||||
file, check = QtWidgets.QFileDialog.getSaveFileName(None, "Сохранить значения",
|
||||
r"C:\Users\Vadim\Desktop\experiment2.xlsx", "Table (.xlsx)")
|
||||
if check:
|
||||
data = {'U_1, В': plots.vol[3][0], 'I_1, мкА': plots.cur[3][0]}
|
||||
I_0, k_0, A = [], [], []
|
||||
params = fitting.fit(plots.vol[3][0], plots.cur[3][0])
|
||||
I_0.append(params[0])
|
||||
k_0.append(params[1])
|
||||
A.append(params[2])
|
||||
for i in range(len(plots.vol[3]) - 1):
|
||||
mes = {'U_' + str(i+2) + ', В': plots.vol[3][i+1], 'I_' + str(i+2) + ', мкА': plots.cur[3][i+1]}
|
||||
data.update(mes)
|
||||
params = fitting.fit(plots.vol[3][i + 1], plots.cur[3][i + 1])
|
||||
I_0.append(params[0])
|
||||
k_0.append(params[1])
|
||||
A.append(params[2])
|
||||
|
||||
#I_0.extend([[] * (len(plots.vol[3][0]) - len(plots.vol[3]))])
|
||||
#k_0.extend([[] * (len(plots.vol[3][0]) - len(plots.vol[3]))])
|
||||
#A.extend([[] * (len(plots.vol[3][0]) - len(plots.vol[3]))])
|
||||
|
||||
data.update({'I_0, мкА': I_0, 'k_0, мкА/В': k_0, 'A, мкА/В': A})
|
||||
|
||||
df = pd.DataFrame(dict([(k, pd.Series(v)) for k, v in data.items()]))
|
||||
df.to_excel(file, index=False)
|
||||
|
||||
def hint(self):
|
||||
if not self.hint_open:
|
||||
self.text.show()
|
||||
|
Loading…
Reference in New Issue
Block a user