Number of line for fcontour

3 次查看(过去 30 天)
If somebody can tell me how to increase number of lines for fcontour plot I would be much grateful. Thanks in advance.

采纳的回答

Star Strider
Star Strider 2021-11-27
A somewhat different approach —
syms x y
z(x,y) = exp(-(x-5)^2) + cos(y)
z(x, y) = 
figure
hfc = fcontour(z, [0 10 -2*pi 2*pi]);
colormap(turbo)
title('Default Levels')
figure
hfc = fcontour(z, [0 10 -2*pi 2*pi]);
Lvls = hfc.LevelList;
hfc.LevelList = linspace(min(Lvls), max(Lvls), 5*numel(Lvls));
colormap(turbo)
title('Increased Countours, Same Range')
.

更多回答(1 个)

Image Analyst
Image Analyst 2021-11-26
Look at the max and min of your surface, then compute the 'LevelStep' using the number of contours you want. Something like (untested)
numContours = 10;
levelStep = (max(z(:)) - min(z(:))) / numContours;
fcontour(z, 'LevelStep', levelStep);
  1 个评论
David Togonidze
David Togonidze 2021-11-26
It gives me the error about levelStep not being a double which is logical since I have symbolic expressions in "Z". Shoud have mentioned that in the original question.

请先登录,再进行评论。

标签

Community Treasure Hunt

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

Start Hunting!

Translated by