OSCR

Anterior and posterior retrosplenial cortex form distinct visuospatial circuits in the mouse.

Code ↔ Paper

18 matches between paragraphs of the paper and lines of its authors' code, computed by the harvester (lexical-v1). Click a colored paragraph or line to see its counterpart.

The 18 matches
  1. [1] § Methods › Detection of neurons with position activity ↔ src/rscvp/spatial/main_slb.py, lines 76 to 149 · score 0.96 · occupancy normalized activity, circularly shifted, Gaussian window, linear track, session duration, shuffled distribution · Report a mismatch
  2. [2] § Methods › Selection of active neurons ↔ src/rscvp/visual/main_reliability.py, lines 62 to 123 · score 0.92 · de randomized response, pre stimulus, correlation coefficients, cross trial, visually evoked, visual reliability · Report a mismatch
  3. [3] § Results › Anterior and posterior RSC subregions integrate specific sets of inputs ↔ demo/example_3d_reconstruction.py, lines 9 to 27 · score 0.82 · VISal, VISli, VISpl, VISam, VISpm, VISpor · Report a mismatch
  4. [4] § Results › Anterior and posterior RSC subregions integrate specific sets of inputs ↔ src/rscvp/atlas/util_plot.py, lines 1 to 31 · score 0.82 · VISal, VISli, VISpl, VISam, VISpm, VISpor · Report a mismatch
  5. [5] § Methods › Detection of neurons with position activity ↔ src/rscvp/spatial/main_place_field.py, lines 237 to 309 · score 0.77 · consecutive position bins, activity exceeded, baseline activity, field width, peak, neurons · Report a mismatch
  6. [6] § Methods › Two-photon calcium imaging ↔ src/rscvp/util/cli/cli_suite2p.py, lines 25 to 131 · score 0.74 · imaging depth, frame rate, optical planes, calcium imaging, PMT, ETL · Report a mismatch
  7. [7] § Results › Visual response properties differ between anterior and posterior RSC ↔ src/rscvp/visual/main_reliability.py, lines 62 to 123 · score 0.70 · de randomized, correlation coefficients, visually responsive neurons, visual reliability, Pearson, threshold · Report a mismatch
  8. [8] § Methods › Population decoding of position ↔ src/rscvp/model/bayes_decoding/main_decode_analysis.py, lines 120 to 183 · score 0.63 · decoded position, posterior probability, decoding error, model · Report a mismatch
  9. [9] § Methods › Selection of active neurons ↔ src/rscvp/selection/main_trial_reliability.py, lines 20 to 98 · score 0.62 · standard deviation, calcium transients, actively, reliability, baseline, lap · Report a mismatch
  10. [10] § Methods › Characterization of direction and orientation visual selectivity ↔ src/rscvp/visual/util.py, lines 140 to 281 · score 0.62 · orthogonal orientation, preferred orientation, OSI, DSI, selectivity · Report a mismatch
  11. [11] § Results › Anterior and posterior RSC subregions integrate specific sets of inputs ↔ demo/example_3d_reconstruction.py, lines 9 to 27 · score 0.61 · VISam, VISpm, VISpor, RSC · Report a mismatch
  12. [12] § Results › Anterior and posterior RSC subregions integrate specific sets of inputs ↔ src/rscvp/atlas/util_plot.py, lines 1 to 31 · score 0.61 · VISam, VISpm, VISpor · Report a mismatch
  13. [13] § Methods › Quantification of position-related activity ↔ src/rscvp/spatial/main_trial_corr.py, lines 16 to 83 · score 0.59 · pairwise Pearson correlation, trial correlation, median, reliability, activity, position · Report a mismatch
  14. [14] § Results › Position coding varies along the anterior–posterior RSC axis ↔ src/rscvp/model/bayes_decoding/util_plot.py, lines 77 to 121 · score 0.57 · Confusion matrices, Cue locations, predicted position, decoded, bins, animals · Report a mismatch
  15. [15] § Methods › Visual stimulation ↔ src/rscvp/retinotopic/util.py, lines 175 to 258 · score 0.55 · circular patch, counterclockwise, retinotopic, interval, stimulation · Report a mismatch
  16. [16] § Methods › Population decoding of position ↔ src/rscvp/model/bayes_decoding/_decoder.py, lines 50 to 123 · score 0.55 · Bayesian decoding, spatial bins, probability, model, posterior · Report a mismatch
  17. [17] § Results › Anterior and posterior RSC rely on different sensory cues for position coding ↔ src/rscvp/behavioral/main_vr_licking.py, lines 15 to 114 · score 0.55 · reward zone, VR task, licking, landmarks, treadmill, position · Report a mismatch
  18. [18] § Methods › Two-photon calcium imaging ↔ configs/sbx/rig1/scanbox_config.m, lines 1 to 64 · score 0.53 · laser, physical, resonant, power, photon, ETL · Report a mismatch

Paper

Loaded from Europe PMC by your browser; OSCR does not store it: doi.org · Europe PMC

The paper is loaded when this pane is shown.

The authors' code

Python · 238 lines · 8.8 KB · BSD-3-Clause · 2 matches

  1. import collections
  2. import numpy as np
  3. from matplotlib.axes import Axes
  4. from scipy.signal import butter, lfilter
  5. from scipy.stats import pearsonr
  6. from typing import NamedTuple
  7. from argclz import AbstractParser
  8. from neuralib.io import csv_header
  9. from neuralib.plot import plot_figure
  10. from neuralib.plot.tools import AnchoredScaleBar
  11. from neuralib.suite2p import get_neuron_signal, sync_s2p_rigevent
  12. from neuralib.util.verbose import publish_annotation
  13. from rscvp.util.cli.cli_output import DataOutput
  14. from rscvp.util.cli.cli_plot import PlotOptions
  15. from rscvp.util.cli.cli_selection import SelectionOptions
  16. from rscvp.util.cli.cli_suite2p import get_neuron_list, NeuronID
  17. from stimpyp import GratingPattern
  18. __all__ = [
  19. 'VisualReliabilityOptions',
  20. 'plot_cat_trial'
  21. ]
  22. @publish_annotation('main', project='rscvp', figure='fig.4A & fig.S4 & fig.S5B-C', as_doc=True)
  23. class VisualReliabilityOptions(AbstractParser, SelectionOptions, PlotOptions):
  24. DESCRIPTION = """
  25. Concatenate the calcium traces per visual-stimuli epoch, and compute the pairwise cross-correlation (reliability)
  26. to determine if is a visually-responsive cell
  27. """
  28. def run(self):
  29. self.extend_src_path(self.exp_date, self.animal_id, self.daq_type, self.username)
  30. output_info = self.get_data_output('vc')
  31. self.foreach_visual_reliability(output_info, self.neuron_id)
  32. def foreach_visual_reliability(self, output: DataOutput, neuron_ids: NeuronID):
  33. """Calculate the reliability and plot foreach neuron"""
  34. from tqdm import tqdm
  35. s2p = self.load_suite_2p()
  36. neuron_list = get_neuron_list(s2p, neuron_ids)
  37. riglog = self.load_riglog_data()
  38. image_time = riglog.imaging_event.time
  39. image_time = sync_s2p_rigevent(image_time, s2p, self.plane_index)
  40. pattern = GratingPattern.of(riglog)
  41. headers = ['neuron_id', 'visual_cell', 'reliability', 'max_vis_resp', 'perc95_vis_resp']
  42. with csv_header(output.csv_output, headers) as csv:
  43. for neuron_id in tqdm(neuron_list, desc='visual_reliability', unit='neurons', ncols=80):
  44. signal = get_neuron_signal(s2p, neuron_id, normalize=False)[0]
  45. with plot_figure(output.figure_output(neuron_id)) as ax:
  46. ret = plot_cat_trial(ax, pattern, signal, image_time, s2p.fs,
  47. threshold=self.DEFAULT_TRIAL_THRES)
  48. csv(neuron_id, *ret)
  49. def calc_visual_reliability(data: np.ndarray,
  50. idx_onoff: np.ndarray,
  51. fps: float,
  52. threshold: float = 0.3,
  53. plot_matrix: bool = False) -> tuple[bool, float]:
  54. """
  55. Check if is a visually-evoked cell by calculating the cross-trials correlation.
  56. Refer to Xu et., 2022. Nature Comm.
  57. Trial averaged responses (dF/F) for each stimulus condition was offset by the median of pre-stimulus (5 frames) activity.
  58. Neural responses during the visual stimulus epochs were concatenated for computing the **visual reliability index(r)**
  59. , which defined as the 75th percentile of the cross-trial correlation coefficients of the de-randomized response time courses.
  60. Cell with r > 0.3 (threshold) was classified as a visually responsive neuron
  61. `Dimension parameters`:
  62. T = number of stimulation trials
  63. C = number of stimulation condition
  64. F = number of recording frames foreach stimulation
  65. :param data: Neural responses. `Array[float, [T, C, F]]`
  66. :param idx_onoff: On/Off visual stimulation bool array. `Array[bool, F]`
  67. :param fps: Frame rate of the ``data``
  68. :param threshold: Threshold for identifying whether it is a responsive cell
  69. :param plot_matrix: Preview to see the correlation coefficient matrix
  70. :return: tuple of (reliability > threshold, reliability).
  71. -(reliability > threshold): whether the calculated reliability greater than threshold
  72. -(reliability): visual reliability
  73. """
  74. # find pre-stim
  75. n_trial, n_cond, n_frame = data.shape
  76. idx_stim_1 = np.nonzero(idx_onoff)[0][0]
  77. pre_stim = data[:, :, idx_stim_1 - 5: idx_stim_1] # 5 frames of data before the stimulus
  78. pre_stim = np.mean(np.median(pre_stim, axis=2))
  79. # preprocessing of the calcium signals and grouped by trials
  80. proc_data = data - pre_stim
  81. proc_data = butter_lowpass_filter(proc_data, cutoff=fps * 0.2, fs=fps)
  82. proc_data = proc_data.reshape(n_trial, n_frame * n_cond)
  83. # pairwise
  84. r = np.zeros((n_trial, n_trial))
  85. for i in range(n_trial):
  86. for j in range(n_trial):
  87. r[i, j], _ = pearsonr(proc_data[i], proc_data[j])
  88. # preview
  89. if plot_matrix:
  90. with plot_figure(None) as ax:
  91. ax.imshow(r)
  92. for (i, j), val in np.ndenumerate(r):
  93. ax.text(j, i, f'{val:.2f}', ha='center', va='center', color='white')
  94. reliability = np.percentile(r, 75)
  95. return reliability > threshold, reliability
  96. class VisualEpochPars(NamedTuple):
  97. is_visual: bool
  98. reliability: float
  99. max_vis_resp: float
  100. perc95_vis_resp: float
  101. def plot_cat_trial(ax: Axes,
  102. pattern: GratingPattern,
  103. signal: np.ndarray,
  104. image_time: np.ndarray,
  105. fps: float, *,
  106. threshold: float = 0.3) -> VisualEpochPars:
  107. """
  108. plot concat stimulus epoch calcium trace (order followed by stimuli types)
  109. colors represent different repetitive trials.
  110. :param ax:
  111. :param pattern:
  112. :param signal:
  113. :param image_time:
  114. :param fps: frame rate (for filter)
  115. :param threshold: reliability threshold
  116. :return:
  117. flag: whether a visually-evoked neurons
  118. visual reliability
  119. max signal response
  120. """
  121. cond = pattern.sftfdir_i()
  122. ct = collections.Counter() # counter of trial
  123. cy = {} # dict[(trial, cond)] = y, for storage
  124. ry = {} # dict[(trial, cond)] = y, for non-normalized data storage
  125. cs = {} # dict[nstim] = idx_onoff
  126. for si, st, sf, tf, ori in pattern.foreach_stimulus():
  127. df_fx = np.logical_and(st[0] - 1 <= image_time, image_time <= st[1] + 1)
  128. idx_onoff = np.logical_and(st[0] <= image_time, image_time <= st[1])[df_fx] # 5s per each frame
  129. sig_trial = signal[df_fx] # shape: 5 x fs (3s stimuli window + 1s pre-/post-stimulus)
  130. c = cond[(sf, tf, ori)] # which condition
  131. t = ct[c] # which trial
  132. ct[c] += 1
  133. ry[(t, c)] = sig_trial
  134. sig_trial = sig_trial / (np.max(signal)) # normalization
  135. cy[(t, c)] = sig_trial # store into cy dict
  136. cs[len(sig_trial)] = idx_onoff
  137. # if the last stimulus trial is incomplete
  138. if len(set(ct.values())) > 1:
  139. raise RuntimeError('stimulus trials are incomplete, check protocol file...')
  140. ntrial = max(ct.values())
  141. ncond = len(cond)
  142. nframe_stim = max(map(len, ry.values())) # number of frame per stim epoch
  143. data = np.zeros((ntrial, ncond, nframe_stim))
  144. rawdata = np.zeros((ntrial, ncond, nframe_stim))
  145. for (t, c), sig_trial in cy.items():
  146. data[t, c, :len(sig_trial)] = sig_trial
  147. for (t, c), sig_trial in ry.items():
  148. rawdata[t, c, :len(sig_trial)] = sig_trial
  149. idx_onoff = cs[nframe_stim]
  150. is_visual, idx_reliability = calc_visual_reliability(data, idx_onoff, fps, threshold=threshold)
  151. rawdata = rawdata.reshape((ntrial, ncond * nframe_stim))
  152. data = data.reshape((ntrial, ncond * nframe_stim))
  153. # remove transient noise for plotting
  154. rawdata = butter_lowpass_filter(rawdata, cutoff=fps * 0.2, fs=fps)
  155. data = butter_lowpass_filter(data, cutoff=fps * 0.2, fs=fps)
  156. # Plot
  157. for y, t in enumerate(data):
  158. ax.plot(t + y, linewidth=0.5)
  159. if y == len(data) - 1:
  160. yval = np.max(signal).astype(int)
  161. sbar = AnchoredScaleBar(ax.transData,
  162. sizey=1,
  163. labely=f'{yval}%',
  164. pad=0.1,
  165. color='black')
  166. ax.add_artist(sbar)
  167. ax.set(ylabel='Trial #', xlabel='frames')
  168. ax.set_yticks([it for it in range(ntrial)])
  169. ax.set_yticklabels(it + 1 for it in range(ntrial))
  170. ax.set_title(f'reliability: {idx_reliability:.4f}', loc='right')
  171. # For visual responses from non-normalized raw dff
  172. trial_avg_resp = np.mean(rawdata, axis=0)
  173. max_vis_resp = np.max(trial_avg_resp)
  174. perc95_vis_resp = np.percentile(trial_avg_resp, 95)
  175. return VisualEpochPars(is_visual, idx_reliability, max_vis_resp, perc95_vis_resp)
  176. def butter_lowpass_filter(data: np.ndarray, cutoff: float, fs: float, order: int = 2) -> np.ndarray:
  177. nyq = 0.5 * fs # Nyquist frequency
  178. normal_cutoff = cutoff / nyq
  179. b, a = butter(order, normal_cutoff, btype='low', analog=False, output='ba')
  180. y = lfilter(b, a, data)
  181. return y
  182. if __name__ == '__main__':
  183. VisualReliabilityOptions().main()

main_reliability.py at commit 3855a6b, under BSD-3-Clause · at the source

Overview

Authors: Yu-Ting Wei1,2, João Couto1,3, Fabian Kloosterman1,4, Vincent Bonin1,2,5
  1. VIB-KU Leuven Center for Neuroscience/NERF, Leuven, Belgium
  2. Department of Biology & Leuven Brain Institute, KU Leuven,Leuven, Belgium
  3. Department of Neurobiology, University of California,Los Angeles, CA USA
  4. Faculty of Psychology & Educational Sciences, KU Leuven,Leuven, Belgium
  5. Department of Biosystems, KU Leuven,Leuven, Belgium
Institutions: KU Leuven (Belgium); University of California, Los Angeles (United States)
Journal: Nature communications, volume 17, issue 1, article 4388
Dates: received 1 May 2025; accepted 1 March 2026; published online 25 March 2026
Type: Research article · Language: English
License: CC BY
Identifiers: DOI 10.1038/s41467-026-70762-z · PMID 41881980 · PMCID PMC13181125 · OpenAlex W7140308235
Open access: gold, a free copy (OpenAlex)
Status: code verified (how the code is found and verified)
Categories: mouse (organism), systems (subfield)
Methods: Statistics, Machine learning, Evoked potentials, Connectivity, fMRI & imaging, Single-unit activity, calcium imaging, Physiology & signal measures
Keywords: Neural circuits, Cortex
MeSH: Gyrus Cinguli*, Space Perception*, Spatial Navigation*, Animals, Brain Mapping, Female, Male, Mice, Mice, Inbred C57BL, Neurons, Orientation, Spatial, Visual Cortex (* major topic)
Topic: Memory and Neural Mechanisms (Cognitive Neuroscience, Neuroscience), according to OpenAlex
Funding: Fonds Wetenschappelijk Onderzoek (Research Foundation Flanders) (G0C1220N, G083Y24N, G056725N, G077321N)
Citations: not cited yet (Europe PMC); 71 references in the paper

Abstract

The retrosplenial cortex (RSC) integrates sensory and mnemonic information to support spatial orientation and navigation, yet how visuospatial processing differs across its subregions remains unclear. Here, we combined cellular imaging in navigating mice with brain-wide anatomical input tracing to characterize how multimodal sensory and positional signals are integrated along the anterior–posterior axis of dorsal RSC. We identified consistent differences between anterior and posterior subregions in both functional response properties and long-range connectivity. Anterior RSC neurons displayed sharper and more reliable position tuning during tactile-cued navigation and preferential sensitivity to fast, low–spatial-frequency visual motion. In contrast, posterior RSC neurons showed broader position selectivity, stronger responses to slow, high–spatial-frequency visual patterns, and enhanced tuning in visually immersive virtual environments. Consistent with these differences, anterior RSC received denser projections from motor, somatosensory, and parietal areas, whereas posterior RSC received stronger input from primary and posteromedial visual cortices. Together, these findings identify an anterior–posterior functional gradient in RSC, with subregions differing in how they integrate sensory and positional signals during navigation.

Reproduced under the paper's license (CC BY), from the paper cited above.

Repositories

Its files are read in the Code ↔ Paper reader above, with 18 matches between paragraphs and lines of code.

ytsimon2004/rscvp

License: BSD-3-Clause
State: the link answers, verified on 30 September 2026
Evidence: files inventoried
Commit: 3855a6b6b208acece1bb62c08dcde808fefc12ca, 19 March 2026
Languages: Python (242), Shell (41), Jupyter (2), MATLAB (2)
Size: 429 files, 287 scripts
Software Heritage: not archived
Found in: “Code availability”
Holds: README, license file, environment (pyproject.toml, uv.lock), tests, documentation, 2 notebooks
Not found: CITATION.cff, continuous integration
Tools: NumPy (122 files), Matplotlib (61 files), SciPy (41 files), seaborn (16 files), pandas (11 files), Pingouin (6 files), scikit-learn (4 files), tifffile (3 files), OpenCV (2 files), imageio (1 file), Pillow (1 file), Plotly (1 file), PyTorch (1 file), scikit-image (1 file), Suite2p (1 file)
Availability: 1 check, the latest on 30 September 2026: the link answers
  • 30 September 2026: the link answers
289 files

Zenodo 18234118

License: BSD-3-Clause
State: the link answers, verified on 30 September 2026
Evidence: files inventoried
Size: 1 file
Software Heritage: not checked
Found in: “Code availability”
Not found: README, license file, CITATION.cff, environment file, tests, continuous integration, documentation
Tools: NumPy (122 files), Matplotlib (61 files), SciPy (41 files), seaborn (16 files), pandas (11 files), Pingouin (6 files), scikit-learn (4 files), tifffile (3 files), OpenCV (2 files), imageio (1 file), Pillow (1 file), Plotly (1 file), PyTorch (1 file), scikit-image (1 file), Suite2p (1 file)
Availability: 1 check, the latest on 30 September 2026: the link answers (HTTP 200)
  • 30 September 2026: the link answers (HTTP 200)
292 files
At the source:

Code availability

All custom code used in this study is openly available on GitHub (https://github.com/ytsimon2004/rscvp) and archived in Zenodo (10.5281/zenodo.18234118). The public repository includes detailed documentation and Google Colab notebooks to facilitate streamlined data download and full reproduction of the analyses. Further information required to reproduce or reanalyze the results is available from the corresponding author upon request.

Reproduced under the paper's license (CC BY), from the paper cited above.

Tracing map

Proposed by the machine: these links were found in the paper and verified at the source, without human review. The map will receive a Zenodo DOI once one of the paper's authors has validated it with their ORCID.

What the map holds:

  • 2 repositories of the authors' code, each at its verified commit, with its license and how the link was found in the paper;
  • 577 scripts, each with its path and the digest of its content;
  • 18 matches between paragraphs of the paper and lines of the code (method lexical-v1);
  • neither the text of the paper nor the code itself.

Its JSON (tracing-map.json) is deposited on Zenodo with its DOI once the map is validated.

Data

Datasets cited

Data availability

All two-photon imaging datasets (Suite2p-processed) and retrograde-labeling data (CSV format) have been deposited in Zenodo and are publicly available (10.5281/zenodo.17639283). Any additional data supporting the findings of this study are available from the corresponding author upon request.

Reproduced under the paper's license (CC BY), from the paper cited above.

Versions

The history of this record: each version stored by the harvester or made by a correction of its authors or of the maintainers of its code, and what changed in its facts. The texts of the paper (its abstract, its availability statements) are not part of it; versions that changed only those are not listed.

Version 1, 30 September 2026: the first record

Recorded: type, language, journal, volume, issue, pages, dates, 4 authors, 2 keywords, 12 MeSH terms, 1 funder, 70 references.

Cite

This paper

Wei, Y.-T., Couto, J., Kloosterman, F., & Bonin, V. (2026). Anterior and posterior retrosplenial cortex form distinct visuospatial circuits in the mouse. Nature communications, 17(1), 4388. https://doi.org/10.1038/s41467-026-70762-z

BibTeX

@article{wei2026anterior,
author = {Wei, Yu-Ting and Couto, João and Kloosterman, Fabian and Bonin, Vincent},
title = {{Anterior and posterior retrosplenial cortex form distinct visuospatial circuits in the mouse}},
journal = {Nature communications},
year = {2026},
month = mar,
volume = {17},
number = {1},
pages = {4388},
publisher = {Nature Publishing Group},
issn = {2041-1723},
doi = {10.1038/s41467-026-70762-z},
url = {https://doi.org/10.1038/s41467-026-70762-z},
pmid = {41881980},
pmcid = {PMC13181125}
}

RIS

TY - JOUR
AU - Wei, Yu-Ting
AU - Couto, João
AU - Kloosterman, Fabian
AU - Bonin, Vincent
TI - Anterior and posterior retrosplenial cortex form distinct visuospatial circuits in the mouse
T2 - Nature communications
J2 - Nat Commun
PY - 2026
DA - 2026/03/25
VL - 17
IS - 1
SP - 4388
SN - 2041-1723
PB - Nature Publishing Group
DO - 10.1038/s41467-026-70762-z
UR - https://doi.org/10.1038/s41467-026-70762-z
LA - en
ER -

CSL-JSON

{
"id": "10.1038/s41467-026-70762-z",
"type": "article-journal",
"title": "Anterior and posterior retrosplenial cortex form distinct visuospatial circuits in the mouse",
"container-title": "Nature communications",
"author": [
{
"family": "Wei",
"given": "Yu-Ting"
},
{
"family": "Couto",
"given": "João"
},
{
"family": "Kloosterman",
"given": "Fabian"
},
{
"family": "Bonin",
"given": "Vincent"
}
],
"container-title-short": "Nat Commun",
"volume": "17",
"issue": "1",
"page": "4388",
"DOI": "10.1038/s41467-026-70762-z",
"PMID": "41881980",
"PMCID": "PMC13181125",
"ISSN": "2041-1723",
"publisher": "Nature Publishing Group",
"URL": "https://doi.org/10.1038/s41467-026-70762-z",
"language": "en",
"issued": {
"date-parts": [
[
2026,
3,
25
]
]
}
}

The tracing map gets a citation of its own once an author has validated it and it has a DOI.

Similar papers

The papers with a page that share the most with this one: the tools found in their code, their categories, datasets, cited references and authors, the rarest counting most.

[1] doi:10.1038/s41467-024-51391-w [code]
Egocentric neural representation of geometric vertex in the retrosplenial cortex.
Journal: Nature communications
In common: systems, mouse, 19 references
[2] doi:10.7554/elife.82952 [code]
Coordinated head direction representations in mouse anterodorsal thalamic nucleus and retrosplenial cortex.
Journal: eLife
In common: systems, mouse, 18 references
[3] doi:10.7554/elife.109717 [code]
Retrosplenial cortex enables context-dependent goal-directed sensorimotor transformation.
Journal: eLife
In common: imageio, tifffile, OpenCV, 8 other tools, systems, mouse, 10 references
[4] doi:10.1038/s41467-024-51227-7 [code]
Differential stability of task variable representations in retrosplenial cortex.
Journal: Nature communications
In common: systems, mouse, 13 references
[5] doi:10.1126/sciadv.aea1037 [code]
Distinct cortical spatial representations learned along disparate visual pathways.
Journal: Science advances
In common: seaborn, pandas, SciPy, 2 other tools, systems, 10 references
[6] doi:10.1038/s41467-022-29656-z [code]
Diversity of spatiotemporal coding reveals specialized visual processing streams in the mouse cortex.
Journal: Nature communications
In common: systems, mouse, 9 references, author Vincent Bonin
[7] doi:10.1016/j.crmeth.2026.101302 [code]
DMC-BrainMap is an open-source, end-to-end tool for multi-feature brain mapping in different species.
Journal: Cell reports methods
In common: imageio, tifffile, OpenCV, 9 other tools, mouse, 3 references
[8] doi:10.1101/2025.10.31.685738 [code]
Retrosplenial cortex enables context-dependent goal-directed sensorimotor transformation
Journal: bioRxiv (preprint)
In common: systems, 10 references
[9] doi:10.1038/s41467-022-33883-9 [code]
Distinct organization of two cortico-cortical feedback pathways.
Journal: Nature communications
In common: imageio, OpenCV, scikit-image, 7 other tools, systems, mouse, 4 references
[10] doi:10.1016/j.neuron.2025.11.021 [code]
Spontaneous behavior is a succession of self-directed tasks.
Journal: Neuron
In common: imageio, Plotly, OpenCV, 9 other tools, systems, mouse, 2 references

Contribute

The authors of this paper can claim it, correct its record and validate its tracing map, and the maintainers of its code (its owner, or a public member of its organization) correct what it says of their repository; anyone signed in can ask for its removal. Every request goes to OSCR's own machine, which answers it; your account page follows them.

Sign in with ORCID to claim this paper as one of its authors, correct its record or validate its tracing map: when the paper's metadata lists your ORCID iD, you are recognized at once. Maintainers of its code: sign in with GitHub, then claim the repository on your account page.

Add the badge to the code's README

OSCR: the badge of this paper

If you are an author or a maintainer of this paper's code, you can add this badge. It says what OSCR knows of the paper (its code, its validated tracing map) and links the code to this page. Paste one of these snippets under the README's title. Keep the two marks around it, so that the badge can be replaced in place and is never added twice. OSCR changes nothing in your repository.

Markdown
<!-- oscr-badge:start -->
[![OSCR](https://openscicode.org/badge/doi/10.1038/s41467-026-70762-z.svg)](https://openscicode.org/badge/doi/10.1038/s41467-026-70762-z)
<!-- oscr-badge:end -->
reStructuredText
.. oscr-badge:start

.. image:: https://openscicode.org/badge/doi/10.1038/s41467-026-70762-z.svg
   :target: https://openscicode.org/badge/doi/10.1038/s41467-026-70762-z
   :alt: OSCR

.. oscr-badge:end
HTML
<!-- oscr-badge:start -->
<a href="https://openscicode.org/badge/doi/10.1038/s41467-026-70762-z"><img src="https://openscicode.org/badge/doi/10.1038/s41467-026-70762-z.svg" alt="OSCR"></a>
<!-- oscr-badge:end -->

On GitHub, open the README, choose Edit (the pencil), paste the snippet under the title, then "Commit changes".

If you choose to, you can have the badge kept up to date for you, with oscr badge --write from the command line or with the GitHub Action in your repository's workflows. Every other form and option (a card, AsciiDoc, LaTeX, shields.io) is on the badge page.

Request its removal

To ask OSCR to remove this record, the copies of its authors' scripts or its tracing map, use the removal request page: signed in, you say who you are, what to remove and why, then review and confirm the request. Published rules decide every request (how).

Discussion, reproductions, activity

Discussion: code errors and mismatches between the code and the paper about this paper and its code, from readers and its authors, beside the paper and its tracing map.

Report a mismatch between the code and the paper · Report a code error (signed in)

Reproductions: reports from readers who ran the authors' code and did not get the paper's result, what they ran, with which environment, commit and data.

Report a reproduction failure (signed in)

Versions of its code: the releases of its code tied to a version of this paper (the preprint, the accepted manuscript, the version of record…), each with the tracing map versioned with it.

Activity: what happens around this paper: new versions of its record, its map's validation, discussions and reproductions. It opens with sign-in.