def activity(task): drawall = len(task) == 2 fname = task[0] sfname = "analyzer_settings.txt" wind_size = int(fs.load_parameter(sfname, "WINDOWSIZE", 7)) pstart = int(fs.load_parameter(sfname, "PACKSTART", 79)) pend = int(fs.load_parameter(sfname, "PACKEND", 21)) columns = int(fs.load_parameter(sfname, "HISTCOLUMNS", 7)) params = (wind_size, pstart, pend) alldata = fs.load_matrix(fname) if alldata is not None: packs = [] start_ind = 0 flag = True while flag: pack = find_pack(alldata, start_ind, params) if pack is not None: packs.append(pack) start_ind = pack[1] else: flag = False packs = list(map(lambda x: alldata[x[0]:x[1]], packs)) if drawall: draw_activity(alldata, "all activity") p_act_data = [get_population_activity(alldata)] fs.save_matrix(p_act_data, "output/analyzer/all activity.txt") process_burst(alldata, 0, columns) for i in range(len(packs)): process_burst(packs[i], i+1, columns) draw_activity(packs[i], "pack " + str(i+1) + " activity") else: print("cannot read file '" + fname + "'", flush=True)
def graph(task): lims = len(task) != 1 if lims: fname = task[2] else: fname = task[0] axis_name = fname try: fname_index = axis_name.rindex('\\') + 1 axis_name = axis_name[fname_index:] except ValueError: pass try: fname_index = axis_name.rindex('/') + 1 axis_name = axis_name[fname_index:] except ValueError: pass try: dot_index =axis_name.rindex('.') axis_name = axis_name[:dot_index] except ValueError: pass matrix_act = fs.load_matrix(fname) if matrix_act is not None: act = matrix_act[0] result_name = "output/analyzer/graph_" + axis_name plt.figure(figsize=(max(8, len(act)/50), 6)) plt.xlabel("time") plt.ylabel(axis_name) if lims: plt.ylim(task[:2]) plt.plot(act) plt.savefig(result_name + ".png") plt.close() stat = calculate_statistics_sequence(act) output = "m = {0}\nD = {1}\na = {2}\nk = {3}".format(stat[0], stat[1], stat[2], stat[3]) fs.write_file(result_name + ".txt", output) else: print("cannot read file '" + fname + "'", flush=True)