Handy programs to visualize NIRS data (6): plotAverage

55 sec read

This is the 6th post of the series: Handy programs to visualize NIRS data

When we do an experiment, we often repeat an event (or block) for a few times. For example, in a typical finger tapping task, we ask the participants to do a finger tapping for 20s, then rest for 20s, then repeat the whole tap-rest paradigm for 10 time.

After we extract the NIRS time courses, we often need to know the average of the signal over all repetitions of the event. In the finger tapping experiment, we want to know the average signal across 10 blocks of finger tapping.

What we need to do is:

  1. Know the timing of each block (of course!)
  2. cut the NIRS signal into pieces. The starting points should be a few seconds before the onset timing of the experiment block; and the ending points should be a few seconds after the offset of the experiment block.
  3. Align the pieces and average
  4. Also calculate the standard deviation (or error) of the average
  5. plot
The attached cuixuNIRSretrieve.m and plotAverage can automatically do the above steps. Below is a plot done by plotAverage. In this example, there are two types of events, fs and fb. Each was repeated 10 times. The plot below plot the average of each of the event, and also the standard deviation (the shaded area). The vertical grey bar is the onset timing of the events. From the plot we can see that fb elicits a bigger response than fs does.
plotAverage
plotAverage
You can download the two scripts at:



写作助手,把中式英语变成专业英文


AI writing papers with real references


Want to receive new post notification? 有新文章通知我

第七十四期fNIRS Journal Club视频 曾令伟博士

Youtube: https://youtu.be/WSh0fmADeZw 优酷:https://v.youku.com/v_show/id_XNjU2MzcyOTU3Ng==.html 认知状态解码
Wanling Zhu
21 sec read

第七十四期fNIRS Journal Club通知2026/9/5, 10am 曾令伟博士

认知状态解码是脑机接口与神经调控研究的重要基础,但如何利用fNIRS实现有效解码并进一步用于个体化认知干预仍有待探索。来自空军军医大学的曾令伟博士将介绍他们围绕fNIRS认知状态解码与闭环神经调控开展
Wanling Zhu
16 sec read

第七十三期fNIRS Journal Club视频 梁正博士 赵庆柏课题组

Youtube: https://youtu.be/5r8OR9rmDxo 优酷:https://v.youku.com/v_show/id_XNjU0ODIxNDEwNA==.html 创造性思维是
Wanling Zhu
20 sec read

5 Replies to “Handy programs to visualize NIRS data (6): plotAverage”

  1. Hi Cui,

    Thanks for your generous contribution, I am just wondering if the normal hyspectral camera can take pictures inside potatos
    Any external light can penetrate the potato body(tub)?

    Thanks lot , if you can provide some confirmation.

    regards,
    Dom

  2. Hi Xu

    We would like to use your scripts to average and plot NIRS data.

    Do you may have sample data to test it? I am especially not sure how the eventOnset (structure, the onset time (in seconds) of event) should look like.

    many thanks in advance
    lisa

  3. @Xu Cui
    Hi Xu, I can’t open the link above. Can you send the example of data again?
    I am in doubt whether the data is the output of NirsLAB block average since the signal event specifies a column vector, but I have been exporting Oxy and Deoxy which results a text document with two columns. Additionally, the time onset differs from participant from another as my finger tapping blocks were randomized, should I create eventOnset for each participant?

    kind regards,
    Artur

Leave a Reply

Your email address will not be published. Required fields are marked *