кривые уровней поверхности на двумерном графике
contour2d(x, y, z, nz, [style, strf, leg, rect, nax, fpf]) contour2d(x, y, z, nz, <opt_args>)
два вещественных вектора-строки размером
n1
и n2
: сетка.
вещественная матрица размером (n1,n2)
,
значение функции в сетке, либо Scilab-функция, которая
определяет поверхность z=f(x,y)
.
значения уровней или число уровней.
nz
- целое число
его значение указывает количество кривых
уровня равномерно распределённых от zmin
до zmax
, как показано
ниже:
z= zmin + (1:nz)*(zmax-zmin)/(nz+1)
![]() | Заметьте, что уровни zmin
и zmax не рисуются
(вообще, они сводятся в точку), но их можно
добавить следующим образом: |
nz
- вектор
nz(i)
указывает значение
i
-той кривой уровня.
Это представляет последовательность инструкций
key1=value1, key2=value2
,... где
key1
, key2
,...
могут иметь одно из следующих значений:
style
, leg
,
rect
, nax
,
strf
или axesflag
и frameflag
(см. plot2d)
см. plot2d. Аргумент
style
указывает стили штриха или
цвета, которые требуется использовать для кривых уровня.
Он должен быть того же самого размера, что и количество
уровней.
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=jet(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)") | ![]() | ![]() |