From 65c25ab7b6019a24c537462516d8f90e2a124c79 Mon Sep 17 00:00:00 2001 From: Ben Dichter Date: Tue, 25 Jul 2023 16:03:47 -0400 Subject: [PATCH] improve tutorials (#1738) --- docs/gallery/domain/ecephys.py | 4 ++++ docs/gallery/domain/ophys.py | 4 ++++ docs/gallery/general/plot_file.py | 10 ++++++---- docs/source/_static/trials_example.png | Bin 8141 -> 27270 bytes 4 files changed, 14 insertions(+), 4 deletions(-) diff --git a/docs/gallery/domain/ecephys.py b/docs/gallery/domain/ecephys.py index d12ef4c1d..406f2b789 100644 --- a/docs/gallery/domain/ecephys.py +++ b/docs/gallery/domain/ecephys.py @@ -15,6 +15,10 @@ It is recommended to cover :ref:`basics` before this tutorial. +.. note:: It is recommended to check if your source data is supported by + `NeuroConv Extracellular Electrophysiology Gallery `_. + If it is supported, it is recommended to use NeuroConv to convert your data. + The following examples will reference variables that may not be defined within the block they are used in. For clarity, we define them here: """ diff --git a/docs/gallery/domain/ophys.py b/docs/gallery/domain/ophys.py index f189ddd4e..b8ddb1ae5 100644 --- a/docs/gallery/domain/ophys.py +++ b/docs/gallery/domain/ophys.py @@ -14,6 +14,10 @@ It is recommended to cover :ref:`basics` before this tutorial. +.. note:: It is recommended to check if your source data is supported by + `NeuroConv Optical Physiology Gallery `_. + If it is supported, it is recommended to use NeuroConv to convert your data. + The following examples will reference variables that may not be defined within the block they are used in. For clarity, we define them here: """ diff --git a/docs/gallery/general/plot_file.py b/docs/gallery/general/plot_file.py index 1b1882e89..6ac9ee250 100644 --- a/docs/gallery/general/plot_file.py +++ b/docs/gallery/general/plot_file.py @@ -275,10 +275,9 @@ #################### # :py:class:`~pynwb.base.TimeSeries` objects can be added directly to :py:class:`~pynwb.file.NWBFile` using: # -# * :py:meth:`~pynwb.file.NWBFile.add_acquisition` to add *acquisition* data (raw, acquired data that should never -# change), -# * :py:meth:`~pynwb.file.NWBFile.add_stimulus` to add *stimulus* data, or -# * :py:meth:`~pynwb.file.NWBFile.add_stimulus_template` to store *stimulus templates*. +# * :py:meth:`.NWBFile.add_acquisition` to add *acquisition* data (raw, acquired data that should never change), +# * :py:meth:`.NWBFile.add_stimulus` to add *stimulus* data, or +# * :py:meth:`.NWBFile.add_stimulus_template` to store *stimulus templates*. # nwbfile.add_acquisition(time_series_with_timestamps) @@ -383,6 +382,7 @@ name="behavior", description="processed behavioral data" ) behavior_module.add(position_obj) +behavior_module #################### # @@ -617,6 +617,8 @@ nwbfile.add_time_intervals(sleep_stages) +sleep_stages.to_dataframe() + #################### # Now we overwrite the file with all of the data diff --git a/docs/source/_static/trials_example.png b/docs/source/_static/trials_example.png index 294b50eb22e6f411195697b1a7359c0ce802bc70..8f3b82221716dded69c78198ff94b0e43a849a6b 100644 GIT binary patch literal 27270 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 z%0A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