Научная и инженерная графика

Функция plot имеет различные формы, связанные с входными параметрами.

Пример 1. Построение графика значений функции sin от нуля до 2 с шагом 0,01.

>> x=0:0.01:2;

y=sin(x);

plot(x,y)

Полученный в окне Figure № 1 график может быть перенесен в отчетный документ при помощи опции Edit→Copy Figure (рис. 11).

Рис. 11

Пример 2. Построение нескольких графиков значений функции sin от нуля до 2π.

>> x=0: pi/10: 2*pi;

y=sin(x); y2=0.6*sin(x-0.25); y3=0.8*sin(x-0.5);

plot(x,y, x,y2, 'b:*', x,y3, 'm:+')

Входные данные для plot обеспечивают построение цветных пунктирных графиков и помещают маркеры «+» и «*» в каждую точку данных (рис. 12).

Рис 12

Пример 3. Построение графиков функций в разных окнах.

>> x=0: 0.01: 2;

>> y1=sin(x); y2=cos(x);

>> plot(x,y1)

>> hold on

>> subplot(1,2,1);

>> plot(x,y1)

>> subplot(1,2,2);

>> plot(x,y2)

 

 

Рис. 13

Пример 4. Построение трехмерных графиков функций.

Для отображения функции двух переменных следует:

1. Сгенерировать матрицы с координатами узлов сетки.

2. Вычислить функцию в узлах сетки.

3. Использовать одну из графических функций.

Соответственно этим пунктам написана программа.

 

>> [X,Y]=meshgrid(-1: 0.05: 1, 0: 0.05: 1);

>> Z=4*sin(2*pi*X).*cos(1.5*pi*Y).*(1-X.^2).*Y.*(1-Y);

>> mesh(X,Y,Z);

>> surf(X,Y,Z); colorbar

Функция surf строит каркасную поверхность графика функции и заливает каждую клетку поверхности определенным цветом. Для удобства масштабирования рядом с графиком выводится столбик, устанавливающий соответствие между цветом и значением функции colorbar.

 

Рис. 14

Лабораторная работа 3

Вычислительный эксперимент, программирование,

Разработка приложений

Выполнение команд, содержащихся в M-файле, осуществляется двумя способами:

1. Из редактора M-файлов (клавиша F5).

2. Из командной строки или другого M-файла, при этом в качестве команды используется имя M-файла.

Первый способ рекомендуется при отладке программы. Применение второго способа намного удобнее, особенно, если созданный M-файл будет неоднократно использоваться впоследствии. Закройте все окна и наберите в командной строке fun2. Появится графическое окно с результатом.

Пример 1. Программа для построения рис. 13 записана в M-файл с именем graf1.m. Для интервала исследования

 

 

>>x=1: pi/10: 3*pi; graf1(x) получен график (рис. 15).

 

function y=graf1(x)

y=sin(x);

y2=0.6*sin(x-0.25);

y3=0.8*sin(x-0.5);

plot(x,y, x,y2, 'b:*', x,y3, 'm:+')

 

 

Рис. 15

 

Пример 2. Программа для построения рис. 12 записана в M-файл с именем graf.m. Причем интервал исследования для переменной теперь стал входным параметром программы:

function y=graf(x)

title('{\itf(x)=x^{n}}');

xlabel('x');

ylabel('y');

hFigure=gcf;

set(hFigure,'Color',[1 1 1]);

hText=text;

set(hText,'FontSize',[18]);

for n=2:4

y=x.^n;

hold on

hPlot=plot(x,y);

set(hPlot,'Color',[1.8/n 0.7 0.5]);

set(hPlot,'LineWidth',2);

if n~=2

for i=1:length(y)

s='';

if y(i)==y1(i)

hold on

plot(x(i),y(i),'ko');

s=['(' num2str(x(i)) ',' num2str(y(i)) ')'];

hText=text(x(i),y(i)+2, s); set(hText,'FontSize',[16]);

end

end

end

y1=y; s2=['n=' num2str(n)];

hText=text(1.5, 1.5^2*n-1, s2); set(hText,'FontSize',[14]);

end

 

Теперь можно построить график функции в другом интервале изменения параметра x. После выполнения команды x=-3: 0.1: 2.5; graf(x) построен график (рис. 15).

 

Рис. 15

 

Лабораторная работа 4