doing a boxcar or rectwin ?

39 次查看(过去 30 天)
A
A 2013-4-20
Hello,
This is my first post here in this forum. I hope I get what I want.
I am a very beginner Matlab user. What I want to do is to plot multiple rectangle ( for fMRI block design , for ex: such as this one : ----__----__----__----__ ( or baseline block baseline block baseline ..etc) Of course this is not a perfect example. The most important thing that I am looking to do is the timing. For example I want the the baseline starts from 0 and last for 20 seconds. Then the rectangular box or the block starts from 20 and last to 40 seconds and so on. So a total of, for example, 10 blocks, 5 baselines and 5 task or box or blocks. So the total time is 10*20=200 seconds.
I tried different function in matlab such as rectwin or rectangularPulse but honestly I could not do it.
NB: I wan not sure whether I should post this here or in the question section!
Thanks
  1 个评论
Image Analyst
Image Analyst 2013-4-21
This IS the question section. Not sure what you were thinking about. Newsgroup maybe?

请先登录,再进行评论。

回答(1 个)

Image Analyst
Image Analyst 2013-4-21
Use zeros() and ones() to make a cycle, then repmat to replicate it, like this demo:
rectWidth = 10;
oneCycle = [zeros(1, rectWidth), ones(1, rectWidth)];
% Plot it
subplot(2,1,1);
plot(oneCycle, 'bs-', 'LineWidth', 3);
grid on;
ylim([0 1.1]);
% Use repmat to make lots of them
numberOfCycles = 6;
multipleCycles = repmat(oneCycle, [1, numberOfCycles]);
% Plot it
subplot(2,1, 2);
plot(multipleCycles, 'bs-', 'LineWidth', 2);
grid on;
ylim([0 1.1]);
% Enlarge figure to full screen.
set(gcf, 'units','normalized','outerposition',[0 0 1 1]);

类别

Help CenterFile Exchange 中查找有关 Propagation and Channel Models 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by