How to make a graph that shows evolution of a variable in time through different depths in a lake.
19 views (last 30 days)
Show older comments
Hi all, I saw this graph a lot in papers (like the image below), but I do not have any idea how to make it in Matlab. I want to show a lake's temperature evolution through time in different depths, like the graph I attached. I have a matrix: Z=3705x38 matrix which shows data from 38 depth levels during 3705 days (each column is data from a sensor deployed in the depth of the lake). Please consider that the depth intervals are not the same and I want to show that is lake. so as in the picture, the x axis should be the time, the y axis should be depth and the graph legend shows the temperature range. Your advice will help me tons
1 Comment
John D'Errico
on 20 Oct 2018
Please don't post a duplicate question just to attach the same image in two different ways.
Accepted Answer
jonas
on 20 Oct 2018
Edited: jonas
on 20 Oct 2018
Just create a surface object.
d = is your depth (1x38) t = is your time (1x3705) Te = is your temperature (3705x38)
surf(t,d,Te,'edgecolor','interp') set(gca,'YDir','reverse')
simple as that. I would consider first changing the time to a datetime or duration array.
2 Comments
jonas
on 20 Oct 2018
Edited: jonas
on 20 Oct 2018
set the view to
view([0 90])
I don't know why you spam the forum with this question. It's a very basic plot. You could also use pcolor, imagesc or contourf. The syntax is literally the same.
contourf(t,d,Te)
imagesc(t,d,Te)
pcolor(t,d,Te)
The image you uploaded is however not a contour plot. It is most likely a 3d plot.
More Answers (1)
Image Analyst
on 20 Oct 2018
I'd use imshow() with a colormap. If you need to digitize spatial data that is not yet on a regular grid, with values at every point, then you can use scatteredInterpolant. If you can't figure it out, attach your Z array in a .mat file.
See Also
Categories
Find more on Contour Plots 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!