how to plot a 2D graph on top of a 3D surf

5 views (last 30 days)
DuckDuck
DuckDuck on 23 May 2013
i have a PSD spectrogram and want to plot on top of that a time series graph. In the link is what i want to achieve:<https://docs.google.com/file/d/0B61s6H8F7eyNVXFCNFVseFFaUUE/edit?usp=sharing>
Any idea?
  2 Comments
José-Luis
José-Luis on 23 May 2013
Such a plot is not going to happen automagically. I suggest you look into patch() and arm yourself with some patience. surf() could also work, depending on the kind of data you have.
DuckDuck
DuckDuck on 23 May 2013
i already created the spectrogram, but i want to put also the timeseries. the spectrogram is the fft of the time series. now i want to put them together and try to figure out the hole thing.

Sign in to comment.

Answers (1)

Iain
Iain on 23 May 2013
I can't see the link, but if you have a surf, you can simply issue the commands:
hold on
plot3(x,y,z,colour)
To plot a line arbitrarily over/around/behind your surf. Set x, y or z = to a constant, and you can plot a line on an arbitrary plane.
  3 Comments
Jan
Jan on 23 May 2013
@effess: Please post the code you have created so far an explain "did not succeed" with all necessary details.
DuckDuck
DuckDuck on 24 May 2013
so this is my code, i built the surf and when i plot the graph i get 'Error using plot3 Vectors must be the same lengths.'
figure;surf(tw(172,1:end),Fw,10*log10(afftp),'edgecolor','none');
axis tight;
view(0,90);
xlabel('Time (Seconds)');
ylabel('Hz');
hold on ;
plot3(tw(172,1:end),xhb(172,1:end),1)

Sign in to comment.

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!