[formatting]
This commit is contained in:
parent
307709834b
commit
d5499eb3e8
@ -19,23 +19,22 @@ Lets look at the calibration and the first trial of the recording.
|
|||||||
```{python}
|
```{python}
|
||||||
import pathlib
|
import pathlib
|
||||||
|
|
||||||
import rlxnix as rlx
|
|
||||||
import plotly.graph_objects as go
|
|
||||||
import numpy as np
|
import numpy as np
|
||||||
|
import plotly.graph_objects as go
|
||||||
|
import rlxnix as rlx
|
||||||
import scipy.signal as signal
|
import scipy.signal as signal
|
||||||
from plotly.subplots import make_subplots
|
from plotly.subplots import make_subplots
|
||||||
|
from util import plot_line_comparision, trial_plot
|
||||||
from util import trial_plot, plot_line_comparision
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
dataset_path = pathlib.Path("../oephys2nix/test/AllStimuli/2025-10-20-aa-invivo-2-recording.nix")
|
dataset_path = pathlib.Path("../oephys2nix/test/AllStimuli/2025-10-20-aa-invivo-2-recording.nix")
|
||||||
relacs_path = pathlib.Path("../oephys2nix/test/AllStimuli/2025-10-20-aa-invivo-2_relacs/2025-10-20-aa-invivo-2_relacs.nix")
|
relacs_path = pathlib.Path(
|
||||||
|
"../oephys2nix/test/AllStimuli/2025-10-20-aa-invivo-2_relacs/2025-10-20-aa-invivo-2_relacs.nix"
|
||||||
|
)
|
||||||
|
|
||||||
dataset = rlx.Dataset(str(dataset_path))
|
dataset = rlx.Dataset(str(dataset_path))
|
||||||
relacs = rlx.Dataset(str(relacs_path))
|
relacs = rlx.Dataset(str(relacs_path))
|
||||||
|
|
||||||
#INFO: Select the first stimulus of the calibration repro
|
# INFO: Select the first stimulus of the calibration repro
|
||||||
repro_d = dataset.repro_runs("BaselineActivity")[0]
|
repro_d = dataset.repro_runs("BaselineActivity")[0]
|
||||||
repro_r = relacs.repro_runs("BaselineActivity")[0]
|
repro_r = relacs.repro_runs("BaselineActivity")[0]
|
||||||
|
|
||||||
@ -57,7 +56,7 @@ ttl, t = repro_d.trace_data("ttl-line")
|
|||||||
If you zoom in you can see a little delay between the different recording systems. It seems that open-ephys is before the relacs recording.
|
If you zoom in you can see a little delay between the different recording systems. It seems that open-ephys is before the relacs recording.
|
||||||
|
|
||||||
```{python}
|
```{python}
|
||||||
#| echo: False
|
# | echo: False
|
||||||
# 2. Add traces to the FIRST subplot (row=1, col=1)
|
# 2. Add traces to the FIRST subplot (row=1, col=1)
|
||||||
# Note: Plotly rows and columns are 1-indexed
|
# Note: Plotly rows and columns are 1-indexed
|
||||||
fig = trial_plot(repro_d, repro_r, 1.0)
|
fig = trial_plot(repro_d, repro_r, 1.0)
|
||||||
@ -70,12 +69,13 @@ print(f"Duration of the dataset {repro_d.duration}")
|
|||||||
print(f"Duration of the relacs {repro_r.duration}")
|
print(f"Duration of the relacs {repro_r.duration}")
|
||||||
# Resample the open-ephys data
|
# Resample the open-ephys data
|
||||||
sinus_resampled = signal.resample(sinus, len(sinus_r))
|
sinus_resampled = signal.resample(sinus, len(sinus_r))
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
```{python}
|
```{python}
|
||||||
#| echo: False
|
# | echo: False
|
||||||
fig= plot_line_comparision(t_r, t_r, sinus_r, sinus_resampled, ["sinus-relacs", "sinus-resampled-open-ephys"])
|
fig = plot_line_comparision(
|
||||||
|
t_r, t_r, sinus_r, sinus_resampled, ["sinus-relacs", "sinus-resampled-open-ephys"]
|
||||||
|
)
|
||||||
fig.show()
|
fig.show()
|
||||||
```
|
```
|
||||||
We need to scale the two signals
|
We need to scale the two signals
|
||||||
@ -85,13 +85,10 @@ oephys_lanes = [sinus, local_eod_oe, global_eod_oe, stimulus_oe]
|
|||||||
relacs_lanes = [sinus_r, local_eod_re, global_eod_re, stimulus_re]
|
relacs_lanes = [sinus_r, local_eod_re, global_eod_re, stimulus_re]
|
||||||
names_lanes = ["sinus", "local-eod", "global-eod", "stimulus"]
|
names_lanes = ["sinus", "local-eod", "global-eod", "stimulus"]
|
||||||
samples_20kHz = t[-1] * 20_000
|
samples_20kHz = t[-1] * 20_000
|
||||||
print(samples_20kHz)
|
|
||||||
print(f"Total duration {t[-1]}")
|
|
||||||
print(repro_d.duration)
|
|
||||||
lags_lanes = []
|
lags_lanes = []
|
||||||
for oephys_lane, relacs_lane, names_lane in zip(oephys_lanes, relacs_lanes, names_lanes, strict=True):
|
for oephys_lane, relacs_lane, names_lane in zip(
|
||||||
print(oephys_lane.shape)
|
oephys_lanes, relacs_lanes, names_lanes, strict=True
|
||||||
print(relacs_lane.shape)
|
):
|
||||||
oephys_lane_resampled = signal.resample(oephys_lane, int(samples_20kHz))
|
oephys_lane_resampled = signal.resample(oephys_lane, int(samples_20kHz))
|
||||||
correlation = signal.correlate(oephys_lane_resampled, relacs_lane, mode="full")
|
correlation = signal.correlate(oephys_lane_resampled, relacs_lane, mode="full")
|
||||||
lags = signal.correlation_lags(oephys_lane_resampled.size, relacs_lane.size, mode="full")
|
lags = signal.correlation_lags(oephys_lane_resampled.size, relacs_lane.size, mode="full")
|
||||||
@ -101,7 +98,13 @@ for oephys_lane, relacs_lane, names_lane in zip(oephys_lanes, relacs_lanes, name
|
|||||||
```
|
```
|
||||||
|
|
||||||
```{python}
|
```{python}
|
||||||
#| echo: False
|
# | echo: False
|
||||||
fig = plot_line_comparision(t_r, t_r, np.roll(sinus_r, lags_lanes[0]), sinus_resampled, ["rolled sinus-relacs", "sinus-resampled-open-ephys"])
|
fig = plot_line_comparision(
|
||||||
|
t_r,
|
||||||
|
t_r,
|
||||||
|
np.roll(sinus_r, lags_lanes[0]),
|
||||||
|
sinus_resampled,
|
||||||
|
["rolled sinus-relacs", "sinus-resampled-open-ephys"],
|
||||||
|
)
|
||||||
fig.show()
|
fig.show()
|
||||||
```
|
```
|
||||||
|
|||||||
@ -58,7 +58,7 @@ If you zoom in you can see a little delay between the different recording system
|
|||||||
|
|
||||||
```{python}
|
```{python}
|
||||||
# | echo: False
|
# | echo: False
|
||||||
fig = trial_plot(repro_d, repro_r)
|
fig = trial_plot(repro_d, repro_r, 0.41)
|
||||||
fig.show()
|
fig.show()
|
||||||
```
|
```
|
||||||
### Correlation between the Signals
|
### Correlation between the Signals
|
||||||
@ -85,8 +85,6 @@ lags_lanes = []
|
|||||||
for oephys_lane, relacs_lane, names_lane in zip(
|
for oephys_lane, relacs_lane, names_lane in zip(
|
||||||
oephys_lanes, relacs_lanes, names_lanes, strict=True
|
oephys_lanes, relacs_lanes, names_lanes, strict=True
|
||||||
):
|
):
|
||||||
print(oephys_lane.shape)
|
|
||||||
print(relacs_lane.shape)
|
|
||||||
oephys_lane_resampled = signal.resample(oephys_lane, len(relacs_lane))
|
oephys_lane_resampled = signal.resample(oephys_lane, len(relacs_lane))
|
||||||
correlation = signal.correlate(oephys_lane_resampled, relacs_lane, mode="full")
|
correlation = signal.correlate(oephys_lane_resampled, relacs_lane, mode="full")
|
||||||
lags = signal.correlation_lags(oephys_lane_resampled.size, relacs_lane.size, mode="full")
|
lags = signal.correlation_lags(oephys_lane_resampled.size, relacs_lane.size, mode="full")
|
||||||
|
|||||||
@ -19,23 +19,22 @@ Lets look at the calibration and the first trial of the recording.
|
|||||||
```{python}
|
```{python}
|
||||||
import pathlib
|
import pathlib
|
||||||
|
|
||||||
import rlxnix as rlx
|
|
||||||
import plotly.graph_objects as go
|
|
||||||
import numpy as np
|
import numpy as np
|
||||||
|
import plotly.graph_objects as go
|
||||||
|
import rlxnix as rlx
|
||||||
import scipy.signal as signal
|
import scipy.signal as signal
|
||||||
from plotly.subplots import make_subplots
|
from plotly.subplots import make_subplots
|
||||||
|
from util import plot_line_comparision, trial_plot
|
||||||
from util import trial_plot, plot_line_comparision
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
dataset_path = pathlib.Path("../oephys2nix/test/Test1/2025-10-08-aa-invivo-2-recording.nix")
|
dataset_path = pathlib.Path("../oephys2nix/test/Test1/2025-10-08-aa-invivo-2-recording.nix")
|
||||||
relacs_path = pathlib.Path("../oephys2nix/test/Test1/2025-10-08-aa-invivo-2_relacs/2025-10-08-aa-invivo-2.nix")
|
relacs_path = pathlib.Path(
|
||||||
|
"../oephys2nix/test/Test1/2025-10-08-aa-invivo-2_relacs/2025-10-08-aa-invivo-2.nix"
|
||||||
|
)
|
||||||
|
|
||||||
dataset = rlx.Dataset(str(dataset_path))
|
dataset = rlx.Dataset(str(dataset_path))
|
||||||
relacs = rlx.Dataset(str(relacs_path))
|
relacs = rlx.Dataset(str(relacs_path))
|
||||||
|
|
||||||
#INFO: Select the first stimulus of the calibration repro
|
# INFO: Select the first stimulus of the calibration repro
|
||||||
repro_d = dataset.repro_runs("FICurve_1")[0].stimuli[2]
|
repro_d = dataset.repro_runs("FICurve_1")[0].stimuli[2]
|
||||||
repro_r = relacs.repro_runs("FICurve_1")[0].stimuli[2]
|
repro_r = relacs.repro_runs("FICurve_1")[0].stimuli[2]
|
||||||
|
|
||||||
@ -57,10 +56,8 @@ ttl, t = repro_d.trace_data("ttl-line")
|
|||||||
If you zoom in you can see a little delay between the different recording systems. It seems that open-ephys is before the relacs recording.
|
If you zoom in you can see a little delay between the different recording systems. It seems that open-ephys is before the relacs recording.
|
||||||
|
|
||||||
```{python}
|
```{python}
|
||||||
#| echo: False
|
# | echo: False
|
||||||
# 2. Add traces to the FIRST subplot (row=1, col=1)
|
fig = trial_plot(repro_d, repro_r, 0.41)
|
||||||
# Note: Plotly rows and columns are 1-indexed
|
|
||||||
fig = trial_plot(repro_d, repro_r)
|
|
||||||
fig.show()
|
fig.show()
|
||||||
```
|
```
|
||||||
### Correlation between the Signals
|
### Correlation between the Signals
|
||||||
@ -70,12 +67,13 @@ print(f"Duration of the dataset {repro_d.duration}")
|
|||||||
print(f"Duration of the relacs {repro_r.duration}")
|
print(f"Duration of the relacs {repro_r.duration}")
|
||||||
# Resample the open-ephys data
|
# Resample the open-ephys data
|
||||||
sinus_resampled = signal.resample(sinus, len(sinus_r))
|
sinus_resampled = signal.resample(sinus, len(sinus_r))
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
```{python}
|
```{python}
|
||||||
#| echo: False
|
# | echo: False
|
||||||
fig= plot_line_comparision(t_r, t_r, sinus_r, sinus_resampled, ["sinus-relacs", "sinus-resampled-open-ephys"])
|
fig = plot_line_comparision(
|
||||||
|
t_r, t_r, sinus_r, sinus_resampled, ["sinus-relacs", "sinus-resampled-open-ephys"]
|
||||||
|
)
|
||||||
fig.show()
|
fig.show()
|
||||||
```
|
```
|
||||||
We need to scale the two signals
|
We need to scale the two signals
|
||||||
@ -85,9 +83,9 @@ oephys_lanes = [sinus, local_eod_oe, global_eod_oe, stimulus_oe]
|
|||||||
relacs_lanes = [sinus_r, local_eod_re, global_eod_re, stimulus_re]
|
relacs_lanes = [sinus_r, local_eod_re, global_eod_re, stimulus_re]
|
||||||
names_lanes = ["sinus", "local-eod", "global-eod", "stimulus"]
|
names_lanes = ["sinus", "local-eod", "global-eod", "stimulus"]
|
||||||
lags_lanes = []
|
lags_lanes = []
|
||||||
for oephys_lane, relacs_lane, names_lane in zip(oephys_lanes, relacs_lanes, names_lanes, strict=True):
|
for oephys_lane, relacs_lane, names_lane in zip(
|
||||||
print(oephys_lane.shape)
|
oephys_lanes, relacs_lanes, names_lanes, strict=True
|
||||||
print(relacs_lane.shape)
|
):
|
||||||
oephys_lane_resampled = signal.resample(oephys_lane, len(relacs_lane))
|
oephys_lane_resampled = signal.resample(oephys_lane, len(relacs_lane))
|
||||||
correlation = signal.correlate(oephys_lane_resampled, relacs_lane, mode="full")
|
correlation = signal.correlate(oephys_lane_resampled, relacs_lane, mode="full")
|
||||||
lags = signal.correlation_lags(oephys_lane_resampled.size, relacs_lane.size, mode="full")
|
lags = signal.correlation_lags(oephys_lane_resampled.size, relacs_lane.size, mode="full")
|
||||||
@ -97,7 +95,13 @@ for oephys_lane, relacs_lane, names_lane in zip(oephys_lanes, relacs_lanes, name
|
|||||||
```
|
```
|
||||||
|
|
||||||
```{python}
|
```{python}
|
||||||
#| echo: False
|
# | echo: False
|
||||||
fig = plot_line_comparision(t_r, t_r, np.roll(sinus_r, lags_lanes[0]), sinus_resampled, ["rolled sinus-relacs", "sinus-resampled-open-ephys"])
|
fig = plot_line_comparision(
|
||||||
|
t_r,
|
||||||
|
t_r,
|
||||||
|
np.roll(sinus_r, lags_lanes[0]),
|
||||||
|
sinus_resampled,
|
||||||
|
["rolled sinus-relacs", "sinus-resampled-open-ephys"],
|
||||||
|
)
|
||||||
fig.show()
|
fig.show()
|
||||||
```
|
```
|
||||||
|
|||||||
@ -18,23 +18,22 @@ format:
|
|||||||
```{python}
|
```{python}
|
||||||
import pathlib
|
import pathlib
|
||||||
|
|
||||||
import rlxnix as rlx
|
|
||||||
import plotly.graph_objects as go
|
|
||||||
import numpy as np
|
import numpy as np
|
||||||
|
import plotly.graph_objects as go
|
||||||
|
import rlxnix as rlx
|
||||||
import scipy.signal as signal
|
import scipy.signal as signal
|
||||||
from plotly.subplots import make_subplots
|
from plotly.subplots import make_subplots
|
||||||
|
from util import plot_line_comparision, trial_plot
|
||||||
from util import trial_plot, plot_line_comparision
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
dataset_path = pathlib.Path("../oephys2nix/test/Test1/2025-10-08-aa-invivo-2-recording.nix")
|
dataset_path = pathlib.Path("../oephys2nix/test/Test1/2025-10-08-aa-invivo-2-recording.nix")
|
||||||
relacs_path = pathlib.Path("../oephys2nix/test/Test1/2025-10-08-aa-invivo-2_relacs/2025-10-08-aa-invivo-2.nix")
|
relacs_path = pathlib.Path(
|
||||||
|
"../oephys2nix/test/Test1/2025-10-08-aa-invivo-2_relacs/2025-10-08-aa-invivo-2.nix"
|
||||||
|
)
|
||||||
|
|
||||||
dataset = rlx.Dataset(str(dataset_path))
|
dataset = rlx.Dataset(str(dataset_path))
|
||||||
relacs = rlx.Dataset(str(relacs_path))
|
relacs = rlx.Dataset(str(relacs_path))
|
||||||
|
|
||||||
#INFO: Select the first stimulus of the calibration repro
|
# INFO: Select the first stimulus of the calibration repro
|
||||||
repro_d = dataset.repro_runs("FileStimulus_1")[0].stimuli[2]
|
repro_d = dataset.repro_runs("FileStimulus_1")[0].stimuli[2]
|
||||||
repro_r = relacs.repro_runs("FileStimulus_1")[0].stimuli[2]
|
repro_r = relacs.repro_runs("FileStimulus_1")[0].stimuli[2]
|
||||||
|
|
||||||
@ -56,10 +55,10 @@ ttl, t = repro_d.trace_data("ttl-line")
|
|||||||
If you zoom in you can see a little delay between the different recording systems. It seems that open-ephys is before the relacs recording.
|
If you zoom in you can see a little delay between the different recording systems. It seems that open-ephys is before the relacs recording.
|
||||||
|
|
||||||
```{python}
|
```{python}
|
||||||
#| echo: False
|
# | echo: False
|
||||||
# 2. Add traces to the FIRST subplot (row=1, col=1)
|
# 2. Add traces to the FIRST subplot (row=1, col=1)
|
||||||
# Note: Plotly rows and columns are 1-indexed
|
# Note: Plotly rows and columns are 1-indexed
|
||||||
fig = trial_plot(repro_d, repro_r)
|
fig = trial_plot(repro_d, repro_r,1.01)
|
||||||
|
|
||||||
fig.show()
|
fig.show()
|
||||||
```
|
```
|
||||||
@ -73,8 +72,10 @@ sinus_resampled = signal.resample(sinus, len(sinus_r))
|
|||||||
```
|
```
|
||||||
|
|
||||||
```{python}
|
```{python}
|
||||||
#| echo: False
|
# | echo: False
|
||||||
fig= plot_line_comparision(t_r, t_r, sinus_r, sinus_resampled, ["sinus-relacs", "sinus-resampled-open-ephys"])
|
fig = plot_line_comparision(
|
||||||
|
t_r, t_r, sinus_r, sinus_resampled, ["sinus-relacs", "sinus-resampled-open-ephys"]
|
||||||
|
)
|
||||||
fig.show()
|
fig.show()
|
||||||
```
|
```
|
||||||
We need to scale the two signals
|
We need to scale the two signals
|
||||||
@ -84,7 +85,9 @@ oephys_lanes = [sinus, local_eod_oe, global_eod_oe, stimulus_oe]
|
|||||||
relacs_lanes = [sinus_r, local_eod_re, global_eod_re, stimulus_re]
|
relacs_lanes = [sinus_r, local_eod_re, global_eod_re, stimulus_re]
|
||||||
names_lanes = ["sinus", "local-eod", "global-eod", "stimulus"]
|
names_lanes = ["sinus", "local-eod", "global-eod", "stimulus"]
|
||||||
lags_lanes = []
|
lags_lanes = []
|
||||||
for oephys_lane, relacs_lane, names_lane in zip(oephys_lanes, relacs_lanes, names_lanes, strict=True):
|
for oephys_lane, relacs_lane, names_lane in zip(
|
||||||
|
oephys_lanes, relacs_lanes, names_lanes, strict=True
|
||||||
|
):
|
||||||
print(oephys_lane.shape)
|
print(oephys_lane.shape)
|
||||||
print(relacs_lane.shape)
|
print(relacs_lane.shape)
|
||||||
oephys_lane_resampled = signal.resample(oephys_lane, len(relacs_lane))
|
oephys_lane_resampled = signal.resample(oephys_lane, len(relacs_lane))
|
||||||
@ -96,9 +99,15 @@ for oephys_lane, relacs_lane, names_lane in zip(oephys_lanes, relacs_lanes, name
|
|||||||
```
|
```
|
||||||
|
|
||||||
```{python}
|
```{python}
|
||||||
#| echo: False
|
# | echo: False
|
||||||
fig = plot_line_comparision(t_r, t, np.roll(stimulus_re, lags_lanes[-1]), stimulus_oe-np.mean(stimulus_oe), ["rolled sinus-relacs", "sinus-resampled-open-ephys"])
|
fig = plot_line_comparision(
|
||||||
|
t_r,
|
||||||
|
t,
|
||||||
|
np.roll(stimulus_re, lags_lanes[-1]),
|
||||||
|
stimulus_oe - np.mean(stimulus_oe),
|
||||||
|
["rolled sinus-relacs", "sinus-resampled-open-ephys"],
|
||||||
|
)
|
||||||
fig.show()
|
fig.show()
|
||||||
|
|
||||||
print(f"The lag of the whitenoise is {lags_lanes[-1] * (1/20_000) * 1000} milli seconds")
|
print(f"The lag of the whitenoise is {lags_lanes[-1] * (1 / 20_000) * 1000} milli seconds")
|
||||||
```
|
```
|
||||||
|
|||||||
@ -86,8 +86,6 @@ lags_lanes = []
|
|||||||
for oephys_lane, relacs_lane, names_lane in zip(
|
for oephys_lane, relacs_lane, names_lane in zip(
|
||||||
oephys_lanes, relacs_lanes, names_lanes, strict=True
|
oephys_lanes, relacs_lanes, names_lanes, strict=True
|
||||||
):
|
):
|
||||||
print(oephys_lane.shape)
|
|
||||||
print(relacs_lane.shape)
|
|
||||||
oephys_lane_resampled = signal.resample(oephys_lane, len(relacs_lane))
|
oephys_lane_resampled = signal.resample(oephys_lane, len(relacs_lane))
|
||||||
correlation = signal.correlate(oephys_lane_resampled, relacs_lane, mode="full")
|
correlation = signal.correlate(oephys_lane_resampled, relacs_lane, mode="full")
|
||||||
lags = signal.correlation_lags(oephys_lane_resampled.size, relacs_lane.size, mode="full")
|
lags = signal.correlation_lags(oephys_lane_resampled.size, relacs_lane.size, mode="full")
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user