Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2023.1.0 - Français


contourf

courbes de niveaux 2D remplies d'une surface 3D

Séquence d'appel

contourf(x, y, z, nz, [style, strf, leg, rect, nax, fpf])

Paramètres

x,y

deux vecteurs lignes de taille n1 et n2.

z

matrice réelle de taille (n1,n2), les valeurs de la fonction.

nz

valeurs des niveaux ou nombre de niveaux

-

Si nz est un entier, sa valeur définit le nombre de courbes de niveaux espacées régulièrement entre zmin et zmax :

z= zmin + (1:nz)*(zmax-zmin)/(nz+1)

Noter que les niveaux zmin et zmax ne sont pas dessinés (génériquement ils sont réduits à des points) mais peuvent être ajoutés avec

[im,jm] = find(z == zmin);     // ou zmax
plot2d(x(im)',y(jm)',-9,"000")
-

Si nz est un vecteur, nz(i) donne la valeur du ième niveau. Noter qu'il peut être utile pour voir les niveaux zmin et zmax d'ajouter une tolérance de l'ordre de %eps : nz=[ zmin+%eps,..,zmax-%eps] .

style,strf,leg,rect,nax

voir plot2d. L'argument style définit les styles de pointillés ou les couleurs utilisés pour dessiner les courbes. Il doit être de même taille que le nombre de niveaux.

fpf

fpf permet de changer le format des nombres affichés sur les courbes de niveau, en utilisant la syntaxe du C (par exemple fpf="%.3f"). Définir fpf à " " implique qu'aucun niveau sera affiché sur les courbes. Si fpf n'est pas défini, le format par défaut est celui utilisé dans la fonction contour2d.

Description

contourf remplit l'espace entre deux courbes de niveaux consécutives d'une surface z=f(x,y) sur un dessin 2D. Les valeurs de f(x,y) sont données par la matrice z aux points du plan définis dans x et y.

Taper contourf() pour voir une démonstration de la fonction.

Exemples

contourf(1:10,1:10,rand(10,10),5,1:5,"011"," ",[0,0,11,11])
function z=peaks(x, y)
x1 = x(:).*.ones(1,size(y,'*'));
y1 = y(:)'.*.ones(size(x,'*'),1);
z =  (3*(1-x1).^2).*exp(-(x1.^2) - (y1+1).^2) ...
   - 10*(x1/5 - x1.^3 - y1.^5).*exp(-x1.^2-y1.^2) ...
   - 1/3*exp(-(x1+1).^2 - y1.^2)
endfunction

function z=peakit()
    x = -4:0.1:4
    y = x
    z = peaks(x,y)
endfunction

z = peakit();

levels = [-6:-1,-logspace(-5,0,10),logspace(-5,0,10),1:8];
m = size(levels,'*');
n = fix(3/8*m);
r = [(1:n)'/n; ones(m-n,1)];
g = [zeros(n,1); (1:n)'/n; ones(m-2*n,1)];
b = [zeros(2*n,1); (1:m-2*n)'/(m-2*n)];
h = [r g b];
gcf().color_map = h;
clf();
contourf([],[],z,[-6:-1,-logspace(-5,0,10),logspace(-5,0,10),1:8]);

Voir aussi

  • contour — level curves on a 3D surface
  • contour2di — calcule les courbes de niveau d'une surface
  • plot2d — 2D plot
Report an issue
<< contour2dm 2d_plot cutaxes >>

Copyright (c) 2022-2024 (Dassault Systèmes)
Copyright (c) 2017-2022 (ESI Group)
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Mon May 22 12:39:43 CEST 2023