How do I plot this simple function in matlab

I have a function f(x) = +i x>0;
= 1 x=0;
= -i x<0 ;
I am confused because of the existence of the complex number. Suppose I want to take the fourier transform of this function. I do y=fft(f(x)); plot(x,real(y)); Is this right?

 Accepted Answer

Did you simply want to plot that complex-valued function of a real variable, f(x), you can do that with stem3
x= -50:50;
y = zeros(size(x));
y(x<0) = -1i;
y(x>0) = 1i;
y(x==0) = 1;
stem3(x,real(y),imag(y))
xlabel('x'); ylabel('Re(f(x))'); zlabel('Imag(f(x))');

1 Comment

Hi,
I loved the way you plotted it. Thank you. I would like to know if I could combine the 3 conditions of y and put into one equation. I actually want to multiply this with another function and take the FFT of it? How could I do that?

Sign in to comment.

More Answers (1)

x=rand(100,1) % eg
y=fft(x)
plot(abs(y))
why real(y)?

Categories

Find more on Fourier Analysis and Filtering in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!