Трехмерная графика
Каждая точка в пространстве характеризуется тремя координатами. Набор точек, принадлежащих одной линии в пространстве нужно задать в виде трех векторов (первый должен содержать первые координаты этих точек, второй – вторые, третий – третьи). Вот эти три вектора и подаются на вход функции plot3, которая осуществит проектирование соответствующей трехмерной линии на плоскость и построит результирующее изображение. Так, например, следующий фрагмент кода построит изображение, представленное на рисунке. >> t=0: pi/50:10*pi; >> x=sin(t); >> y=cos(t); >> plot3(x, y, t); >> grid on Если на вход функции plot3 подать не три вектора, а три матрицы одинакового размера, система MatLab построит семейство линий пересечения поверхности с набором параллельных друг другу плоскостей, которые к тому же параллельны одной из координатных плоскостей. При построении трехмерного графика для отображения функции двух переменных следует:
Например, для построения графика функции на области определения в виде квадрата , необходимо
>> [x,y]=meshgrid(0:0.2:1,0:0.2:1) x = 0 0.2000 0.4000 0.6000 0.8000 1.0000 0 0.2000 0.4000 0.6000 0.8000 1.0000 0 0.2000 0.4000 0.6000 0.8000 1.0000 0 0.2000 0.4000 0.6000 0.8000 1.0000 0 0.2000 0.4000 0.6000 0.8000 1.0000 0 0.2000 0.4000 0.6000 0.8000 1.0000 y = 0 0 0 0 0 0 0.2000 0.2000 0.2000 0.2000 0.2000 0.2000 0.4000 0.4000 0.4000 0.4000 0.4000 0.4000 0.6000 0.6000 0.6000 0.6000 0.6000 0.6000 0.8000 0.8000 0.8000 0.8000 0.8000 0.8000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000
>> z=x.^2+y.^2 z = 0 0.0400 0.1600 0.3600 0.6400 1.0000 0.0400 0.0800 0.2000 0.4000 0.6800 1.0400 0.1600 0.2000 0.3200 0.5200 0.8000 1.1600 0.3600 0.4000 0.5200 0.7200 1.0000 1.3600 0.6400 0.6800 0.8000 1.0000 1.2800 1.6400 1.0000 1.0400 1.1600 1.3600 1.6400 2.0000
>> mesh(x,y,z): >> mesh(x, y, z) Для более точного построения следует выбрать более мелкий шаг построения сетки - 0.05. Задание 21. Постройте график функции на прямоугольной области определения в шести подокнах (subplot), используя различные графические функции, задавая заголовок каждому графику (title).
|