Upload files to ''

This commit is contained in:
jacquelinegoebl 2021-07-16 12:10:57 +02:00
parent d0d2690f96
commit f464823801
5 changed files with 633 additions and 0 deletions

94
plot_running_std.py Normal file
View File

@ -0,0 +1,94 @@
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import matplotlib.colors as mcolors
import matplotlib.gridspec as gridspec
from IPython import embed
from scipy import stats
import math
import os
from IPython import embed
import helper_functions as hf
from params import *
if __name__ == '__main__':
###################################################################################################################
# load data
###################################################################################################################
# load all the data of one day
filename = sorted(os.listdir('../../../data/'))[1]
aifl = np.load('../data/'+filename+'/aifl2.npy', allow_pickle=True)
# all_max_ch_means = np.load('../data/' + filename + '/all_max_ch_means.npy', allow_pickle=True)
all_xticks = np.load('../data/' + filename + '/all_xtickses.npy', allow_pickle=True)
all_Ctime_v = np.load('../data/' + filename + '/all_Ctime_v.npy', allow_pickle=True)
ipp = np.load('../data/' + filename + '/all_ipp.npy', allow_pickle=True)
power_means = np.load('../data/' + filename + '/power_means.npy', allow_pickle=True)
###################################################################################################################
# parameter and variables
###################################################################################################################
# plot params
# variables
sampling_rate = 1/np.diff(all_Ctime_v[0])[0] # in sec
# lists
fish_in_aifl = list(np.unique(np.where(~np.isnan(aifl[:, :, 0]))[1]))
thresholds = np.full(3, np.nan)
all_run_std = []
###################################################################################################################
# analysis
###################################################################################################################
fig = plt.figure(figsize=(16, 14))
spec = gridspec.GridSpec(ncols=2, nrows=2, figure=fig)
ax1 = fig.add_subplot(spec[0, 0])
ax2 = fig.add_subplot(spec[0, 1])
ax3 = fig.add_subplot(spec[1, 0])
for fish in range(len(fish_in_aifl)):
run_mean, run_std = hf.running_3binsizes(ipp[fish], sampling_rate)
all_run_std.append(run_std)
if len(np.arange(len(run_mean[2]))[~np.isnan(run_mean[2])]) < 10:
continue
###########################################################################################################
# plot
# hf.plot_running(all_xticks, run_mean, run_std, threshold, fish, color_vec, fs, fs_ticks, lw)
# plt.show()
for ax_cntr ,ax in enumerate([ax1, ax2, ax3]):
non_nan = np.arange(len(run_mean[ax_cntr]))[~np.isnan(run_mean[ax_cntr])]
ax.plot(all_xticks[fish][non_nan], run_std[ax_cntr][non_nan], '.', color=color_vec[fish])
ax.timeaxis()
ax.make_nice_ax()
ax1.set_xlabel('Time [h]', fontsize=fs)
rs = np.array(all_run_std)
for idx in range(3):
rs1 = np.hstack(rs[:, idx])
rs1 = rs1[~np.isnan(rs1)]
rs1 = rs1[rs1>0]
print(np.percentile(rs1, [5, 95, 50]))
thresholds[idx] = np.percentile(rs1, 50)
if filename not in os.listdir('../data/'):
os.mkdir('../data/'+filename)
np.save('../data/' + filename + '/thresholds.npy', thresholds)
fig2, ax2 = plt.subplots()
ax2.hist(np.hstack(rs[:,0]), bins=200)
ax2.hist(np.hstack(rs[:,1]), bins=200)
ax2.hist(np.hstack(rs[:,2]), bins=200)
plt.show()
embed()

74
plot_trajec_5_47.py Normal file
View File

@ -0,0 +1,74 @@
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import matplotlib.gridspec as gridspec
from IPython import embed
import helper_functions as hf
from params import *
import os
import datetime
if __name__ == '__main__':
###################################################################################################################
# parameter and variables
# plot params
inch = 2.45
save_path = '../../thesis/Figures/Results/'
kernel_size = 100
fig = plt.figure(constrained_layout=True, figsize=[13 / inch, 15 / inch])
gs = gridspec.GridSpec(ncols=1, nrows=2, figure=fig, hspace=0.05, wspace=0.0,
left=0.1, bottom=0.15, right=0.95, top=0.98)
ax1 = fig.add_subplot(gs[0, 0])
ax2 = fig.add_subplot(gs[1, 0])
###################################################################################################################
# load all the data of one day
for filename_idx in [0]:
filename = sorted(os.listdir('../data/'))[filename_idx]
all_max_ch_means = np.load('../data/' + filename + '/all_max_ch.npy', allow_pickle=True)
all_xticks = np.load('../data/' + filename + '/all_xtickses.npy', allow_pickle=True)
all_ipp = np.load('../data/' + filename + '/all_ipp.npy', allow_pickle=True)
power_means = np.load('../data/' + filename + '/power_means.npy', allow_pickle=True)
freq = np.load('../data/' + filename + '/fish_freq_q10.npy', allow_pickle=True)
###############################################################################################################
# get fish
for fish_number, ax, ax_idx in zip([5,47], [ax1,ax2], [0, 1]):
if power_means[fish_number] >= -90.0:
ipp = all_ipp[fish_number]
x_tickses = all_xticks[fish_number]
max_ch_mean = all_max_ch_means[fish_number]
# smoothing of max channel mean
kernel = np.ones(kernel_size) / kernel_size
smooth_mcm = np.convolve(max_ch_mean, kernel, 'valid')
try:
smooth_x = x_tickses[int(np.ceil(kernel_size/2)):-int(np.floor(kernel_size/2))]
except:
embed()
quit()
#####################################################################################################
# plot traces
ax.imshow(ipp[::20].T[::-1], vmin=-100, vmax=-50, aspect='auto', interpolation='gaussian',
extent=[x_tickses[0], x_tickses[-1], -0.5, 15.5])
try:
ax.plot(smooth_x[::20], smooth_mcm[::20], '.', color=color2[4])
except:
continue
ax.beautimechannelaxis()
ax.timeaxis()
ax.text(-0.12, 0.95, chr(ord('A') + ax_idx), transform=ax.transAxes, fontsize='large')
fig.savefig(save_path + 'trajectory_5_47.pdf')
# fig.savefig('../../../goettingen2021_poster/pictures/trajectory_5_47.pdf')
plt.show()

267
plot_transit_fish.py Normal file
View File

@ -0,0 +1,267 @@
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import matplotlib.colors as mcolors
import matplotlib.gridspec as gridspec
from IPython import embed
from scipy import stats
import os
from IPython import embed
import helper_functions as hf
from params import *
import itertools
from statisitic_functions import *
if __name__ == '__main__':
###################################################################################################################
# parameter and variables
# plot params
inch = 2.45
save_path = '../../thesis/Figures/Results/'
# kernel
kernel_size = 120
kernel = np.ones(kernel_size) / kernel_size
# counter
stl_counter = 0
ax0_counter = 0
# transit: start, stop, dur
transit_data = []
# transit: time, trajectory
xy_transit = []
# transit: metadata: name, freq
transit_meta = []
# average speed
speed = []
###################################################################################################################
# load data
###################################################################################################################
for day_idx in [0, 1, 2, 3]:
filename = sorted(os.listdir('../data/'))[day_idx]
aifl = np.load('../data/' + filename + '/aifl2.npy', allow_pickle=True)
all_xticks = np.load('../data/' + filename + '/all_xtickses.npy', allow_pickle=True)
all_max_ch_means = np.load('../data/' + filename + '/all_max_ch.npy', allow_pickle=True)
power_means = np.load('../data/' + filename + '/power_means.npy', allow_pickle=True)
all_hms = np.load('../data/' + filename + '/all_hms.npy', allow_pickle=True)
freq = np.load('../data/' + filename + '/fish_freq_q10.npy', allow_pickle=True)
names = np.load('../data/' + filename + '/fish_species.npy', allow_pickle=True)
###############################################################################################################
# lists
fish_in_aifl = list(np.unique(np.where(~np.isnan(aifl[:, :, 0]))[1]))
# directs = []
flat_x = np.unique(np.hstack(all_xticks))
###############################################################################################################
# analysis of the changes and trajectories
for fish_number in range(len(power_means)):
if power_means[fish_number] >= -90.0:
x_tickses = all_xticks[fish_number]
max_ch_mean = all_max_ch_means[fish_number]
# smoothing of max channel mean
kernel = np.ones(kernel_size) / kernel_size
smooth_mcm = np.convolve(max_ch_mean, kernel, 'valid')
smooth_x = x_tickses[int(np.ceil(kernel_size / 2)):-int(np.floor(kernel_size / 2) - 1)]
# interpolate
fish_x = flat_x[np.where(flat_x == x_tickses[0])[0][0]:np.where(flat_x == x_tickses[-1])[0][0] + 1]
try:
trajectory = np.round(np.interp(fish_x, smooth_x, smooth_mcm))
except:
continue
# trial duration
t_s = datetime.timedelta(np.diff([fish_x[0], fish_x[-1]])[0])
trial_dur = t_s.total_seconds() / 60
# average speed
speed.append(np.sum(np.abs(np.diff(trajectory))) / trial_dur)
# activity vs. time
t = np.array(all_hms[fish_number] / 60 / 60)
# swim through
first = fish_x[0]
last = fish_x[-1]
start15 = mdates.date2num(mdates.num2date(first) + datetime.timedelta(seconds=2 * 60))
stop15 = mdates.date2num(mdates.num2date(last) - datetime.timedelta(seconds=2 * 60))
y = trajectory
# t = np.roll(t, int(len(np.unique(np.hstack(all_hms)))/2))
if np.any(trajectory[fish_x < start15] >= 13) and np.any(trajectory[fish_x > stop15] <= 2):
xy_transit.append(np.array([t, y]))
transit_data.append(np.array([t[0], t[-1], trial_dur, day_idx]))
transit_meta.append([names[fish_number], freq[fish_number,2]])
elif np.any(trajectory[fish_x < start15] <= 2) and np.any(trajectory[fish_x > stop15] >= 13):
xy_transit.append(np.array([t, y]))
transit_data.append(np.array([t[0], t[-1], trial_dur, day_idx]))
transit_meta.append([names[fish_number], freq[fish_number,2]])
elif np.any(trajectory[fish_x < start15] <= 1) \
and np.any(trajectory[fish_x > stop15] >= 6) \
and np.any(trajectory[fish_x > stop15] <= 7):
xy_transit.append(np.array([t, y]))
transit_data.append(np.array([t[0], t[-1], trial_dur, day_idx]))
transit_meta.append([names[fish_number], freq[fish_number,2]])
elif np.any(trajectory[fish_x < start15] >= 6) \
and np.any(trajectory[fish_x < start15] <= 7) \
and np.any(trajectory[fish_x > stop15] <= 1):
xy_transit.append(np.array([t, y]))
transit_data.append(np.array([t[0], t[-1], trial_dur, day_idx]))
transit_meta.append([names[fish_number], freq[fish_number,2]])
elif np.any(trajectory[fish_x < start15] >= 14) \
and np.any(trajectory[fish_x > stop15] >= 8) \
and np.any(trajectory[fish_x > stop15] <= 9):
xy_transit.append(np.array([t, y]))
transit_data.append(np.array([t[0], t[-1], trial_dur, day_idx]))
transit_meta.append([names[fish_number], freq[fish_number,2]])
elif np.any(trajectory[fish_x < start15] >= 8) \
and np.any(trajectory[fish_x < start15] <= 9) \
and np.any(trajectory[fish_x > stop15] >= 14):
xy_transit.append(np.array([t, y]))
transit_data.append(np.array([t[0], t[-1], trial_dur, day_idx]))
transit_meta.append([names[fish_number], freq[fish_number,2]])
else:
continue
transit_data = np.array(transit_data)
###############################################################################################################
# figure 1: time points of transit fish and trajectories
fig = plt.figure(constrained_layout=True, figsize=[15 / inch, 12 / inch])
gs = gridspec.GridSpec(ncols=2, nrows=3, figure=fig, hspace=0.05, wspace=0.0,
height_ratios=[1, 1, 1], left=0.1, bottom=0.15, right=0.95, top=0.95)
ax0 = fig.add_subplot(gs[0, :])
ax1 = fig.add_subplot(gs[1, 0])
ax2 = fig.add_subplot(gs[1, 1])
ax3 = fig.add_subplot(gs[2, 0])
ax4 = fig.add_subplot(gs[2, 1])
###############################################################################################################
# plotting
color_list = [0, 1, 4, 6]
for ploti in range(len(transit_data)):
if transit_data[ploti, 2] < 3 * 60:
# colori = color_list[int(transit_data[ploti, 3])]
if transit_meta[ploti][0] == 'Eigenmannia':
colori = 0
elif transit_meta[ploti][1] < 750:
colori = 1
else:
colori = 2
# plot time when fish is there
if transit_data[ploti, 0]<12:
roll_factor = 12
else:
roll_factor = -12
ax0.plot(transit_data[ploti, :2] + roll_factor, [ax0_counter, ax0_counter], color=color_efm[colori], lw=3,
label=labels[colori])
ax0_counter += 1
if transit_data[ploti + 1, 3] != transit_data[ploti, 3]:
ax0.plot([0, 24], [ax0_counter, ax0_counter], color=color_diffdays[0], lw=1, linestyle='dashed')
print(ax0_counter, transit_data[ploti, 3], transit_data[ploti+1, 3])
ax0_counter += 1
# plot trajectories
if transit_data[ploti, 0] > 1 and transit_data[ploti, 1] <= 3.5:
ax2.plot(xy_transit[ploti][0], xy_transit[ploti][1], color=color_efm[colori])
ax2.set_xlim([1, 3.1])
ax2.set_xticks([1,2,3])
ax2.set_xticklabels(['01:00', '02:00', '03:00'])
elif transit_data[ploti, 0] > 2.5 and transit_data[ploti, 1] <= 5:
ax4.plot(xy_transit[ploti][0], xy_transit[ploti][1], color=color_efm[colori])
ax4.set_xlim([3, 5])
ax4.set_xticks([3,4,5])
ax4.set_xticklabels(['03:00', '04:00', '05:00'])
elif transit_data[ploti, 0] > 18 and transit_data[ploti, 1] <= 20:
ax1.plot(xy_transit[ploti][0], xy_transit[ploti][1], color=color_efm[colori])
ax1.set_xlim([18, 20])
ax1.set_xticks([18,19,20])
ax1.set_xticklabels(['18:00', '19:00', '20:00'])
elif transit_data[ploti, 0] > 20 and transit_data[ploti, 1] <= 22:
ax3.plot(xy_transit[ploti][0], xy_transit[ploti][1], color=color_efm[colori])
ax3.set_xlim([20, 22])
ax3.set_xticks([20,21,22])
ax3.set_xticklabels(['20:00', '21:00', '22:00'])
#################################################################################################################
# nice axis
tagx = [-0.07, -0.17, -0.07, -0.17, -0.07]
tagy = [0.95,1.05,1.05,1.05,1.05]
for ax_idx, axis in enumerate([ax0,ax1,ax2,ax3,ax4]):
axis.text(tagx[ax_idx], tagy[ax_idx], chr(ord('A') + ax_idx), transform=axis.transAxes, fontsize='large')
axis.make_nice_ax()
axis.invert_yaxis()
if axis != ax0:
axis.axhline(7.5, xmin=0, xmax=15, color='white', lw=2)
# ax.set_yticklabels([1, 3, 5, 7, 14, 16, 18, 20])
axis.set_yticks([0, 1, 2, 3, 4, 5, 6, 7, 7.5, 8, 9, 10, 11, 12, 13, 14, 15])
axis.set_yticklabels([])
if axis == ax1 or axis == ax3:
axis.set_yticklabels(['1', '', '', '', '5', '', '', '', 'gap', '', '', '', '12', '', '', '', '16'])
axis.set_ylabel('Electrode', fontsize=11)
if axis == ax3 or axis == ax4:
axis.set_xlabel('Time', fontsize=11)
daytagy = [0.1, 0.5, 0.9]
for dayi in [0,1,2]:
ax0.text(0.02, daytagy[dayi], 'Day '+ str(dayi), transform=ax0.transAxes, fontsize='small', va='center', ha='left')
ax0.set_ylabel('Fish')
ax0.set_yticks([])
ax0.set_xlim([-0.1, 24.1])
ax0.set_xticks(np.arange(0, 25, 3))
ax0.set_xticklabels(['12:00', '15:00', '18:00', '21:00', '00:00', '03:00', '06:00', '09:00', '12:00'])
fig.align_ylabels()
# handles, labels = ax0.get_legend_handles_labels()
# unique = [(h, l) for lwdl_idx, (h, l) in enumerate(zip(handles, labels)) if l not in labels[:lwdl_idx]]
# ax0.legend(*zip(*unique), bbox_to_anchor=(1, 1), loc="upper right", bbox_transform=fig.transFigure, ncol=1)
# fig.legend()
fig.savefig(save_path + 'transit.pdf')
plt.show()
###############################################################################################################
# speed
c = np.load('../data/all_changes.npy', allow_pickle=True)
stl = np.load('../data/stl.npy', allow_pickle=True)
speeds = []
for ploti in range(len(transit_data)):
if transit_data[ploti, 2] < 3 * 60:
speeds.append((np.max(xy_transit[ploti][1])-np.min(xy_transit[ploti][1]))/transit_data[ploti, 2])
min =(np.mean(speeds)-np.std(speeds))*60*12
max =(np.mean(speeds)+np.std(speeds))*60*12/1000
embed()

174
plot_when_are_you.py Normal file
View File

@ -0,0 +1,174 @@
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import matplotlib.colors as mcolors
import matplotlib.gridspec as gridspec
from IPython import embed
from scipy import stats
import math
import os
from IPython import embed
import helper_functions as hf
from params import *
if __name__ == '__main__':
###################################################################################################################
# parameter and variables
###################################################################################################################
# plot params
inch = 2.45
save_path = '../../thesis/Figures/Results/'
all_begins = []
all_ends = []
begins = []
ends = []
durations = []
all_durations = []
start = []
stop = []
# plot
fig2, ax2 = plt.subplots(1, 1, figsize=(16 / inch, 6 / inch))
fig2.subplots_adjust(left=0.12, bottom=0.2, right=0.95, top=0.97)
c = 0
###################################################################################################################
# load data
###################################################################################################################
# load all the data of one day
for index, filename_idx in enumerate([0, 1, 2, 3]):
filename = sorted(os.listdir('../data/'))[filename_idx]
all_xticks = np.load('../data/' + filename + '/all_xtickses.npy', allow_pickle=True)
all_Ctime_v = np.load('../data/' + filename + '/all_Ctime_v.npy', allow_pickle=True)
power_means = np.load('../data/' + filename + '/power_means.npy', allow_pickle=True)
names = np.load('../data/' + filename + '/fish_species.npy', allow_pickle=True)
# variables
sampling_rate = 1 / np.diff(all_Ctime_v[0])[0] # in sec
first = np.min(np.unique(np.hstack(all_xticks)))
last = np.max(np.unique(np.hstack(all_xticks)))
start15 = mdates.date2num(mdates.num2date(first) + datetime.timedelta(seconds=15 * 60))
stop15 = mdates.date2num(mdates.num2date(last) - datetime.timedelta(seconds=15 * 60))
trial_dur = (np.max(np.unique(np.hstack(all_Ctime_v))) - np.min(np.unique(np.hstack(all_Ctime_v)))) / 60
start.extend([first])
stop.extend([last])
# plot
ax2.plot(trial_dur, 90, 'o', ms=ms, color=color_diffdays[index])
print(trial_dur)
###############################################################################################################
# analysis
###############################################################################################################
for fish in range(len(all_xticks)):
if power_means[fish] >= -90 and names[fish] != 'unknown':
c += 1
if np.any(all_xticks[fish] <= start15) or np.any(all_xticks[fish] >= stop15):
all_durations.append((all_Ctime_v[fish][-1] - all_Ctime_v[fish][0]) / 60)
else:
durations.append((all_Ctime_v[fish][-1] - all_Ctime_v[fish][0]) / 60)
all_durations.append((all_Ctime_v[fish][-1] - all_Ctime_v[fish][0]) / 60)
###################################################################################################################
# plotting figure 2
dur = np.array(durations)
all_dur = np.array(all_durations)
n3, bin_edges3 = np.histogram(dur, bins=np.linspace(0, 950, 20))
n4, bin_edges4 = np.histogram(all_dur, bins=np.linspace(0, 950, 20))
# n3 = n3 / np.sum(n3) / (bin_edges3[1] - bin_edges3[0])
ax2.bar(bin_edges4[:-1] + (bin_edges4[1] - bin_edges4[0]) / 2, n4,
width=0.9 * (bin_edges4[1] - bin_edges4[0]), label='all', color=color2[5])
ax2.bar(bin_edges3[:-1] + (bin_edges3[1] - bin_edges3[0]) / 2, n3,
width=0.9 * (bin_edges3[1] - bin_edges3[0]), label='corrected', color=color2[4])
ax2.set_xlabel('Presence duration [min]', fontsize=fs)
ax2.set_ylabel('n', fontsize=fs)
ax2.make_nice_ax()
# ax2.set_ylim([0, 10**2])
ax2.set_yscale('symlog')
fig2.legend(loc='center right')
# fig2.savefig(save_path+'appearance_dur.png')
fig2.savefig(save_path+'duration.pdf')
plt.show()
embed()
quit()
# ###################################################################################################################
# # plotting figure 1
# fig1, ax1 = plt.subplots(1, 1, figsize=(16 / inch, 8 / inch))
# fig1.subplots_adjust(left=0.12, bottom=0.3, right=0.95, top=0.97)
# n1, bin_edges1 = np.histogram(begins, bins=35)
# n2, bin_edges2 = np.histogram(ends, bins=bin_edges1)
# n11, bin_edges2 = np.histogram(all_begins, bins=bin_edges1)
# n21, bin_edges2 = np.histogram(all_ends, bins=bin_edges1)
# n1 = n1 / np.sum(n1) / (bin_edges1[1] - bin_edges1[0])
# n2 = n2 / np.sum(n2) / (bin_edges1[1] - bin_edges1[0])
# # n11 = n11 / np.sum(n11) / (bin_edges1[1] - bin_edges1[0])
# # n21 = n21 / np.sum(n21) / (bin_edges1[1] - bin_edges1[0])
#
# ax1.bar(bin_edges1[:-1] + (bin_edges1[1] - bin_edges1[0]) / 2, n11,
# width=0.9 * (bin_edges1[1] - bin_edges1[0]), color=color2[2])
# ax1.bar(bin_edges1[:-1] + (bin_edges1[1] - bin_edges1[0]) / 2, n1,
# width=0.9 * (bin_edges1[1] - bin_edges1[0]), color=color2[0], label='appearance')
#
# ax1.bar(bin_edges1[:-1] + (bin_edges1[1] - bin_edges1[0]) / 2, n21 * -1,
# width=0.9 * (bin_edges1[1] - bin_edges1[0]), color=color2[3])
# ax1.bar(bin_edges1[:-1] + (bin_edges1[1] - bin_edges1[0]) / 2, n2 * -1,
# width=0.9 * (bin_edges1[1] - bin_edges1[0]), color=color2[1], label='disappearance')
# ax1.axhline(y=0.0, xmin=0.0, xmax=1.0, color='k', linewidth=lw)
#
# ax1.set_xlabel('Time', fontsize=fs)
# ax1.set_ylabel('n', fontsize=fs)
# ax1.timeaxis()
# ax1.set_yscale('symlog')
# fig1.autofmt_xdate()
# ax1.make_nice_ax()
# fig1.legend(loc='upper right')
# fig1.savefig(save_path+'appearance_disappearance.png')
# fig1.savefig(save_path+'appearance_disappearance.pdf')
###################################################################################################################
# plotting figure 3
# fig3 = plt.figure(figsize=[16 / inch, 12 / inch])
# spec = gridspec.GridSpec(ncols=1, nrows=2, figure=fig3, hspace=0.3, wspace=0.15,
# height_ratios=[1, 1], left=0.1, bottom=0.15, right=0.99, top=0.98)
# ax3 = fig3.add_subplot(spec[0, 0])
# ax4 = fig3.add_subplot(spec[1, 0])
# ax3.bar(bin_edges1[:-1] + (bin_edges1[1] - bin_edges1[0]) / 2, n1,
# width=0.9 * (bin_edges1[1] - bin_edges1[0]), color=color2[0], label='appearance')
# ax3.bar(bin_edges1[:-1] + (bin_edges1[1] - bin_edges1[0]) / 2, n2 * -1,
# width=0.9 * (bin_edges1[1] - bin_edges1[0]), color=color2[1], label='disappearance')
# ax3.axhline(y=0.0, xmin=0.0, xmax=1.0, color='k', linewidth=lw)
#
# ax3.set_xlabel('Time', fontsize=fs)
# ax3.set_ylabel('n', fontsize=fs)
# ax3.timeaxis()
# fig3.autofmt_xdate()
# ax3.make_nice_ax()
# # fig3.legend(loc='upper right')
#
# ax4.bar(bin_edges4[:-1] + (bin_edges4[1] - bin_edges4[0]) / 2, n4,
# width=0.9 * (bin_edges4[1] - bin_edges4[0]), label='all', color=color2[2])
# ax4.bar(bin_edges3[:-1] + (bin_edges3[1] - bin_edges3[0]) / 2, n3,
# width=0.9 * (bin_edges3[1] - bin_edges3[0]), label='corrected', color=color2[0])
#
# ax4.set_xlabel('Presence duration [min]', fontsize=fs)
# ax4.set_ylabel('n', fontsize=fs)
# ax4.make_nice_ax()
# fig3.legend(loc='upper right')
#
# fig3.savefig(save_path+'appearance_all.pdf')
# exit()
# if filename not in os.listdir('../data/'):
# os.mkdir('../data/'+filename)
#
# np.save('../data/' + filename + '/direction.npy', directs)

24
replace_channel.py Normal file
View File

@ -0,0 +1,24 @@
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
import matplotlib.colors as mcolors
import matplotlib.gridspec as gridspec
from IPython import embed
from scipy import stats
import math
import os
from IPython import embed
import helper_functions as hf
from params import *
if __name__ == '__main__':
###################################################################################################################
# load data
###################################################################################################################
# load all the data of one day
to_be_changed_ident = np.load('../../../Desktop/2019-10-08-18_07/all_ident_v.npy', allow_pickle=True)
correct_ident = np.load('../../../Desktop/2019-10-08-18_07_old/all_ident_v.npy', allow_pickle=True)
embed()
quit()