Effacer les filtres
Effacer les filtres

How does the matlab contourf function work?

2 vues (au cours des 30 derniers jours)
Jenna
Jenna le 17 Mar 2020
Réponse apportée : darova le 17 Mar 2020
How does the matlab contourf function work? The function describes, "MATLAB® automatically selects the contour lines to display." -- but how does Matlab automatically select the lines? (Histogram? some other statistic?)
  2 commentaires
Ameer Hamza
Ameer Hamza le 17 Mar 2020
The documentation does not specify how MATLAB calculates the contour lines internally. Also, you cannot see the internal implementation of the function, which draws the contour. However, you can specify the levels input of the contour function to set the value of contour lines manually.
Jenna
Jenna le 17 Mar 2020
Yes. I know. I'm wondering if someone who works at matlab can describe the functionality a bit for me. Thanks

Connectez-vous pour commenter.

Réponses (1)

darova
darova le 17 Mar 2020
I pretty sure that MATLAB checks each 'plane' (that close to some level) on intersection
Simply reducing the task to plane-plane intersection
clc,clear
cla
[X,Y] = meshgrid(-2:0.1:2);
Z = X.^2+Y.^2-3;
p = surf2patch(X,Y,Z);
surf(X,Y,Z,'edgeColor','none')
alpha(0.5)
f = p.faces;
v = p.vertices;
axis vis3d
for i = 1:size(f,1)
ix = f(i,:);
sgn = sign(v(ix,3));
if abs(sum(sgn)) < 4 % if 'z' values have different sign
patch('faces',ix,...
'vertices',v,...
'faceColor','none')
pause(0.1)
end
end

Catégories

En savoir plus sur Contour Plots dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by