Лабы по инфе (1 сем) / лаба 4 (Элементарная графика)
.docxМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра ВТ
отчет
по лабораторной работе №4
по дисциплине «Информатика»
Тема: Элементарная графика
Студент гр. 9494 |
|
Лобазев Н.А. |
Преподаватель |
|
Гречухин М. Н. |
Санкт-Петербург
2019
Цель: выполнения задания: освоение 2D- и 3D-графики, построение графиков и изображений разных типов.
Требования и рекомендации к выполнению задания:
-
Индивидуальные задания включают работу со всеми приведенными ранее графическими функциями, формат команд и результат их выполнения (рисунок) должен быть предъявлен в отчете.
-
Массивы данных для визуализации могут быть сформированы тремя способами: а) случайный образом (функция rand); б) перечислением значений; в) заполнением матриц с помощью операторов цикла (разд. 5). Количество значений в массивах выбирается из соображений наглядности.
-
Настройка элементов оформления (виды линий, цвета, подписи и др.) должна быть произведена двумя способами: а) с помощью команд; б) с помощью редактора графиков.
-
Примеры оформления операций и данных представлены ранее в разд. 4 в соответствующих подразделах.
Основные теоретические положения:
Графика в линейном масштабе:
-
plot(x, y) – построение графика функции yº=ºy(x); при двумерном х строятся графики хº=ºх(y); если оба массива двумерные, строятся зависимости для соответствующих столбцов;
-
plot(x, y, LineSpec) определяет (табл. 4.1, 4.2) стиль линий, форму маркера точек и цвет линий и маркера заданием строки LineSpec (до трех символов).
Построение графиков функций:
Команда ezplot('f(x)') строит график f (x), заданной символьным выражением (например, ezplot('x^2–2*x+1')), на интервале [–2 2] с выводом выражения в качестве заголовка графика. Команды ezplot('f(x)', limits, fig) и ezplot('f(x)', limits) строят график f (x) на указанном интервале в заданном окне.
Трехмерная графика:
Команды mesh(x, y, z, c), mesh(z, c), mesh(z) определяют задание сетчатой поверхности (массив cопределяет цвета узлов поверхности; если x, уне указаны, то x = 1: n, y = 1: m, где [m, n] = size(z).
Команда plot3(x, y, z)в тех же вариациях, что и plot, предполагает задание одномерных и двумерных массивов – строятся точки с координатами x(i,:), y(i,:), z(i,:) для каждого столбца и соединяются прямыми линиями.
Команды surf(x, y, z, c), surf(z, c), surf(z) определяют задание сплошной поверхности, отличаясь от mesh системой окраски; команда surfс(...) задает проекции линий уровня.
Задания по работе:
1)
>>x=[0:0.1:2];
y=log(x)-sqrt(4-2*x)
plot(x,y)
grid on
y =
Columns 1 through 6
-Inf -4.2519 -3.5068 -3.0479 -2.7051 -2.4252
Columns 7 through 12
-2.1841 -1.9691 -1.7723 -1.5886 -1.4142 -1.2463
Columns 13 through 18
-1.0826 -0.9209 -0.7590 -0.5945 -0.4244 -0.2440
Columns 19 through 21
-0.0447 0.1946 0.6931
>>x=[0:0.1:2];
y=log(x)-sqrt(4-2*x)
plot(x,y,'-.r*')
grid on
y =
Columns 1 through 6
-Inf -4.2519 -3.5068 -3.0479 -2.7051 -2.4252
Columns 7 through 12
-2.1841 -1.9691 -1.7723 -1.5886 -1.4142 -1.2463
Columns 13 through 18
-1.0826 -0.9209 -0.7590 -0.5945 -0.4244 -0.2440
Columns 19 through 21
-0.0447 0.1946 0.6931
>>ezplot('exp(x) + x.^2-2', [0,1])
grid on
2)
>> x = [-3 : 0.4 : 2]
y=[-3: 0.4 : 2];
z1=sin(x+1)-y-1
z2=2*x-cos(y)-2
plot3(x,y,z1)
hold on
plot3(x,y,z2)
grid on
z1 =
Columns 1 through 6
1.0907 0.6004 0.2680 0.0826 0.0106 0
Columns 7 through 12
-0.0106 -0.0826 -0.2680 -0.6004 -1.0907 -1.7245
Column 13
-2.4650
z2 =
Columns 1 through 6
-7.0100 -6.3431 -5.8115 -5.3728 -4.9700 -4.5403
Columns 7 through 12
-4.0253 -3.3801 -2.5801 -1.6253 -0.5403 0.6300
Column 13
1.8272
>> x=[-3:0.4:2];
y=[-3:0.4:2];
[x,y] = meshgrid(x,y);
z1=sin(x+1)-y-1;
z2=2*x-cos(y)-2 ;
mesh(x,y,z1)
hold on
mesh(x,y,z2)
grid on
>> x=[-3:0.1:3];
y=[-3:0.1:3];
[x,y] = meshgrid(x,y);
z1=sin(x+1)-y-1;
z2=2*x-cos(y)-2;
surf(x,y,z1)
hold on
surf(x,y,z2)
grid on
2.2)
>> x = [0 : 0.1 : 2];
y=log(x)-sqrt(4-2*x);
bar(x,y)
grid on
y =
Columns 1 through 6
-Inf -4.2519 -3.5068 -3.0479 -2.7051 -2.4252
Columns 7 through 12
-2.1841 -1.9691 -1.7723 -1.5886 -1.4142 -1.2463
Columns 13 through 18
-1.0826 -0.9209 -0.7590 -0.5945 -0.4244 -0.2440
Columns 19 through 21
-0.0447 0.1946 0.6931
>> x = [0 : 0.1 : 2];
y=log(x)-sqrt(4-2*x)
pie(x,y)
grid on
y =
Columns 1 through 6
-Inf -4.2519 -3.5068 -3.0479 -2.7051 -2.4252
Columns 7 through 12
-2.1841 -1.9691 -1.7723 -1.5886 -1.4142 -1.2463
Columns 13 through 18
-1.0826 -0.9209 -0.7590 -0.5945 -0.4244 -0.2440
Columns 19 through 21
-0.0447 0.1946 0.6931
>> x = [0 : 0.1 : 2];
y=log(x)-sqrt(4-2*x)
stem(x,y)
grid on
y =
Columns 1 through 6
-Inf -4.2519 -3.5068 -3.0479 -2.7051 -2.4252
Columns 7 through 12
-2.1841 -1.9691 -1.7723 -1.5886 -1.4142 -1.2463
Columns 13 through 18
-1.0826 -0.9209 -0.7590 -0.5945 -0.4244 -0.2440
Columns 19 through 21
-0.0447 0.1946 0.6931
3)
Функция
>>x=[0:0.1:1]; y1=abs(2*cos(pi*x)-1) y2=b*sin(x) y=(y1)+(y2); plot(x,y) grid on
>>x = [0 : 0.1 : 1];
y= (abs(2*cos(pi*x)-1))+( b*sin(x))
plot(x,y,'-g^')
grid on
y =
Columns 1 through 6
1.0000 1.7008 2.2074 2.5397 3.4973 4.8354
Columns 7 through 11
6.1352 7.3293 8.3569 9.1687 9.7318
>> x = [0 : 0.1 : 1];
y= (abs(2*cos(pi*x)-1))+( b*sin(x))
bar(x,y)
grid on
y =
Columns 1 through 8
1.1195 1.9863 3.1900 4.1295 4.4142 3.9850 3.0849 2.1045
Columns 9 through 16
1.3826 1.0524 1.0000 0.9476 0.6174 -0.1045 -0.6849 -0.9850
Columns 17 through 21
-0.8142 0.0705 1.6100 3.4137 4.8805
>>x = [0 : 0.1 : 1];
y= (abs(2*cos(pi*x)-1))+( b*sin(x))
pie(x,y)
grid on
y =
Columns 1 through 8
1.1195 1.9863 3.1900 4.1295 4.4142 3.9850 3.0849 2.1045
Columns 9 through 16
1.3826 1.0524 1.0000 0.9476 0.6174 -0.1045 -0.6849 -0.9850
Columns 17 through 21
-0.8142 0.0705 1.6100 3.4137 4.8805
>> x = [0 : 0.1 : 1];
y= (abs(2*cos(pi*x)-1))+( b*sin(x))
stem(x,y)
grid on
y =
Columns 1 through 8
1.1195 1.9863 3.1900 4.1295 4.4142 3.9850 3.0849 2.1045
Columns 9 through 16
1.3826 1.0524 1.0000 0.9476 0.6174 -0.1045 -0.6849 -0.9850
Columns 17 through 21
-0.8142 0.0705 1.6100 3.4137 4.8805
ВЫВОД:
В данной лабораторной работе я научился основан 2D и 3Dграфики в программе Matlab. Работа была очень интересной, ведь это был первой опыт в построении таких графиков на компьютере.