Octave не имеет встроенных средств для построения графиков. Тем не менее, он вполне успешно использует для этого сторонние инструменты, в частности, Gnuplot.
Основным методом графопостроения выступает всё та же функция plot(x,y), что и в Freemat, и в Scilab, т.е. уже рассматривавшаяся ранее. Поэтому движемся дальше. Интересна функция ezplot('выражение'), которая строит график выражения, записанного в аргументе.
ezplot('sin(x)*cos(x)');
Скорректировать пределы по оси абсцисс можно с помощью командыset(gca, 'xlim', [a, b]);
где a и b - начало и конец отображаемого интервала.
Построение графика в полярной системе координат осуществляет функция polar(phi, ro, str), где phi - полярный угол, ro - полярный радиус, str - строка параметров линии графика.
phi = -pi/2:pi/100:pi/2;
ro = sin(phi).*cos(phi);
polar(phi, ro, 'r');
При формировании трёхмерного графика сперва строится сетка в плоскости x0y с помощью meshgrid, затем в узлах сетки рассчитываются значения, после чего функция mesh(x, y, z) формирует график поверхности.
[X Y] = meshgrid(-pi/2:0.1:pi/2, 0:0.1:pi);
Z = sin(X).*cos(Y);
mesh(X, Y, Z);
Для построения таких типичных фигур, как сфера, цилиндр, эллипсоид в Octave предусмотрены специальные функции, формирующие массив точек. В этом случае фигура строится не через mesh, а surf(x, y, z).
Если вы хотите увидеть построение графика "вживую", т.е выполнить анимацию, вам поможет функция comet(x,y). Например, следующий набор команд выполнит построение синусоиды.
x = -pi:pi/20:pi;
y = sin(x);
comet(x,y);
Варьировать время построения можно с помощью дополнительного параметра p: comet(x,y,p), который по умолчанию равен 0,1 с.
Комментариев нет:
Отправить комментарий