Scilab Website | Contribute with GitLab | Mailing list archives | ATOMS toolboxes
Scilab Online Help
2023.0.0 - Русский


contour2d

кривые уровней поверхности на двумерном графике

Синтаксис

contour2d(x, y, z, nz, [style, strf, leg, rect, nax, fpf])
contour2d(x, y, z, nz, <opt_args>)

Аргументы

x, y

два вещественных вектора-строки размером n1 и n2: сетка.

z

вещественная матрица размером (n1,n2), значение функции в сетке, либо Scilab-функция, которая определяет поверхность z=f(x,y).

nz

значения уровней или число уровней.

Если nz - целое число

его значение указывает количество кривых уровня равномерно распределённых от zmin до zmax, как показано ниже:

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

Заметьте, что уровни zmin и zmax не рисуются (вообще, они сводятся в точку), но их можно добавить следующим образом:

[im,jm] = find(z == zmin); // или zmax
plot2d(x(im)',y(jm)',-9,"000")
Если nz - вектор

nz(i) указывает значение i-той кривой уровня.

<opt_args>

Это представляет последовательность инструкций key1=value1, key2=value2,... где key1, key2,... могут иметь одно из следующих значений: style, leg, rect, nax, strf или axesflag и frameflag (см. plot2d)

style, strf, leg, rect, nax

см. plot2d. Аргумент style указывает стили штриха или цвета, которые требуется использовать для кривых уровня. Он должен быть того же самого размера, что и количество уровней.

fpf

You can change the format of the floating point number printed on the levels where fpf is the format in C format syntax (for example fpf="%.3f"). Set fpf to " " implies that the level are not drawn on the level curves. If not given, the default format is "%.3g".

Описание

contour2d рисует кривые уровней поверхности z=f(x,y) на двумерном графике. Значения f(x,y) указываются в матрице z в точках сетки, определённой через x и y.

Необязательные аргументы style, strf, leg, rect, nax могут быть переданы в виде последовательности инструкций key1=value1, key2=value2 ,... где ключи key могут быть style, strf, leg, rect, nax. В этом случае порядок не имеет особого значения.

Используйте функцию contour для рисования кривых уровней на трёхмерной поверхности.

Примеры

contour2d(1:10,1:10,rand(10,10),5,rect=[0,0,11,11])
clf()
// Изменение формата печати уровней
contour2d(1:10,1:10,rand(10,10),5,rect=[0,0,11,11],fpf="%.2f")
// Пример с номерами уровней, печатаемых в легенде.
// Предупреждение: есть много уловок...
x = linspace(0,4*%pi,80);
z = cos(x')*cos(x);
clf(); f=gcf();

// уловка 1: fpf=" " подразумевается, что номера уровней
//           не рисуются на кривых уровней
f.color_map=jetcolormap(7);

// уловка 2: чтобы иметь возможность поместить легенду справа без
//          наложения на кривые уровней, используйте rect с достаточно
//          большим значением xmax
contour2d(x,x,z,-0.75:0.25:0.75,frameflag=3,rect=[0,0,5*%pi,4*%pi],fpf=" ")

// уловка 3: используйте legends (заметьте, что наиболее практичная функция
//          легенды не будет работать, когда один из уровней формируется
//          двумя кривыми)
legends(string(-0.75:0.25:0.75),1:7,"lr");
xtitle("Некоторые уровни кривых функции cos(x)cos(y)")

Смотрите также

  • contour — level curves on a 3D surface
  • contour2di — вычисляет кривые уровней поверхности на двумерном графике
  • plot2d — 2D plot
Report an issue
<< comet 2d_plot contour2di >>

Copyright (c) 2022-2023 (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:
Tue Mar 07 09:28:48 CET 2023