Obtain the frequency response of a time domain chirp signal
1) On the time axis I have wrong values: the time history lasts 45 s whereas in the spectrogram plot I see values from 0 to 2000


RTFM on surf.  You'll need to do something like surf(new_t,new_f,X) instead of just surf(X).  Your new_f should be something like 

new_f = linspace(0,Fs/2,256);


NOTE: I don't have access to matlab, and am not sure of the orientation of X. You may have to swap the parameter locations of new_t and new_f on surf.


  4) I actually need to see only the frequency-amplitude plot, not the 3D representation, so how can I do that? At the moment I am using view([90 0]), but is there a way to plot directly the 2D plot?


Do something like:

plot(new_t, max(X));


You may have to do max(X') instead, depending on the orientation of X.

I'll need to think about answers to 2 &amp; 3. Watch this space.