Пример #1
0
 def fit_curve_clicked(self, curve):
     if self.fit_explorer is None:
         self.fit_explorer = FitExplorer(curve.fit)
     else:
         self.fit_explorer.set_fit(curve.fit)
     self.fit_explorer.show()
Пример #2
0
import sys
import pyqtgraph as pg
from neuroanalysis.ui.fitting import FitExplorer
from multipatch_analysis.database import default_db as db
from multipatch_analysis.avg_response_fit import get_pair_avg_fits
from multipatch_analysis.ui.avg_response_fit import AvgResponseFitUi

app = pg.mkQApp()
pg.dbg()

session = db.session()

expt_id, pre_cell_id, post_cell_id = sys.argv[1:4]
pair = db.experiment_from_ext_id(expt_id, session=session).pairs[pre_cell_id,
                                                                 post_cell_id]

ui = AvgResponseFitUi()

fits = get_pair_avg_fits(pair, session=session, ui=ui)

ui.widget.show()

fe = FitExplorer(fits['vc', -55]['fit_result'])
fe.show()

if sys.flags.interactive == 0:
    app.exec_()
Пример #3
0
 def explore_fit(self, mode, holding):
     fit = self.pair_analyzer.last_fit[mode, holding]
     self.fit_explorer = FitExplorer(fit)
     self.fit_explorer.show()
Пример #4
0
pg.dbg()

pg.mkQApp()

t = np.arange(2000) * 1e-4

rise_time = 5e-3
decay_tau = 20e-3
n_psp = 4
args = {
    'yoffset': (0, 'fixed'),
    'xoffset': (2e-3, -1e-3, 5e-3),
    'rise_time': (rise_time, rise_time*0.5, rise_time*2),
    'decay_tau': (decay_tau, decay_tau*0.5, decay_tau*2),
    'rise_power': (2, 'fixed'),
}
for i in range(n_psp):
    args['xoffset%d'%i] = (25e-3*i, 'fixed')
    args['amp%d'%i] = (250e-6, 0, 10e-3)

fit_kws = {'xtol': 1e-4, 'maxfev': 1000, 'nan_policy': 'omit'}                
model = PspTrain(n_psp)

args2 = {k:(v[0] if isinstance(v, tuple) else v) for k,v in args.items()}
y = np.random.normal(size=len(t), scale=30e-6) + model.eval(x=t, **args2)

fit = model.fit(y, x=t, params=args, fit_kws=fit_kws, method='leastsq')

ex = FitExplorer(fit)
ex.show()