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
|
from numpy import tanh
|
||||||
|
|
||||||
|
|
||||||
# Обсчет значений на данный момент недоступен, но может быть вызван в другом файле
|
|
||||||
# с использованием функции fit()
|
|
||||||
def probe(x, I_0, k_0, A):
|
def probe(x, I_0, k_0, A):
|
||||||
return I_0 * tanh(k_0 / I_0 * x) + A * x
|
return I_0 * tanh(k_0 / I_0 * x) + A * x
|
||||||
|
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
from PySide6 import QtCore, QtWidgets, QtGui
|
from PySide6 import QtCore, QtWidgets, QtGui
|
||||||
import plots
|
import plots
|
||||||
import PIL
|
import PIL
|
||||||
|
import pandas as pd
|
||||||
|
import fitting
|
||||||
|
|
||||||
|
|
||||||
# Значения парметра part при построении графиков установлены на тестовый режим
|
# Значения парметра part при построении графиков установлены на тестовый режим
|
||||||
@ -154,12 +156,20 @@ class Part1(QtWidgets.QWidget):
|
|||||||
|
|
||||||
@QtCore.Slot()
|
@QtCore.Slot()
|
||||||
def savefile(self):
|
def savefile(self):
|
||||||
|
# при замене устройства директорию надо изменить
|
||||||
file, check = QtWidgets.QFileDialog.getSaveFileName(None, "Сохранить график 1",
|
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:
|
if check:
|
||||||
plot1 = PIL.Image.open('tmpplots/tmpplot3.jpg')
|
plot1 = PIL.Image.open('tmpplots/tmpplot3.jpg')
|
||||||
plot1.save(file)
|
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):
|
def hint(self):
|
||||||
if not self.hint_open:
|
if not self.hint_open:
|
||||||
self.text.show()
|
self.text.show()
|
||||||
@ -327,11 +337,37 @@ class Part2(QtWidgets.QWidget):
|
|||||||
|
|
||||||
def save_file(self):
|
def save_file(self):
|
||||||
file, check = QtWidgets.QFileDialog.getSaveFileName(None, "Сохранить график 2",
|
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:
|
if check:
|
||||||
plot1 = PIL.Image.open('tmpplots/tmpplot4.jpg')
|
plot1 = PIL.Image.open('tmpplots/tmpplot4.jpg')
|
||||||
plot1.save(file)
|
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):
|
def hint(self):
|
||||||
if not self.hint_open:
|
if not self.hint_open:
|
||||||
self.text.show()
|
self.text.show()
|
||||||
@ -391,4 +427,4 @@ class Part2(QtWidgets.QWidget):
|
|||||||
self.num -= 1
|
self.num -= 1
|
||||||
if self.num == 0:
|
if self.num == 0:
|
||||||
self.save_btn.hide()
|
self.save_btn.hide()
|
||||||
self.delete_btn.hide()
|
self.delete_btn.hide()
|
||||||
|
Loading…
Reference in New Issue
Block a user