Get contour matrix without plotting?
73 次查看(过去 30 天)
显示 更早的评论
I have a big gridded dataset Z and I want to create a contour matrix C from it. I need contours at many levels, -100:2:100. I can do this:
C = contour(Z,100:2:100);
Unfortunately, computation time is slow, it takes several minutes because my Z is large and I am trying to get a lot of countour lines out of it. How can I speed this up? I was hoping I could get C without plotting, but I don't know how to do that. I tried turning the figure visibility off but that had only a quarter of a second improvement out of several minutes computation time.
Ideas?
采纳的回答
Moritz
2013-9-20
Have you tried contourc instead of contour ? It gives you the contour lines without any plots.
[cline]=contour(Z,[1 1]); gives you one contour line at level 1 Of course you can do many levels.
With one level: cline(1,2:end) contains your x values cline(1,1) contains the level cline(2,1) contains the numer of data poinst cline(2,2:end) contains your corresponding y values
with multiple values it just adds the new level at the end of the array, you can find it by the entry of it´s level
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Contour Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!