Главная Случайная страница


Категории:

ДомЗдоровьеЗоологияИнформатикаИскусствоИскусствоКомпьютерыКулинарияМаркетингМатематикаМедицинаМенеджментОбразованиеПедагогикаПитомцыПрограммированиеПроизводствоПромышленностьПсихологияРазноеРелигияСоциологияСпортСтатистикаТранспортФизикаФилософияФинансыХимияХоббиЭкологияЭкономикаЭлектроника






Спеціальні функції двовимірної графіки у системі MatLab

Побудова графіків у логарифмічному та напівлогарифмічному масштабах

Для побудови графіка у логарифмічному масштабі у MatLab використовуються 2 основні функції:

logspace(x1, x2) — завдання логарифмічного масштабу на інтервалі [x1, x2] для зміни значення аргументу;

loglog(x,y(x))— завдання логарифмічного масштабу для діапазону зміни функції y(x) та виведення графіка. Команда аналогічна команді plot.

Приклад побудови графіка функції, близької до експоненціальної:

Приклад

»x=logspace(?1,3);

»loglog(x,exp(x)./x);

»grid on

 

У деяких випадках більш зручним є напівлогарифмічний масштаб графіків, коли на одній осі використовується логарифмічна, а на іншій — лінійна шкала. Під час роботи з графіками у напівлогарифмічному масштабі використовують дві команди, кожна з яких установлює логарифмічний масштаб заоднією з осей координат:

semilogx(x, y) — будує графік функції y(x) у логарифмічному масштабі з основою 10 у координаті х та лінійному в координаті y;

semilogy(x, y) — будує графік функції y(x) в логарифмічному масштабі з основою 10 у координаті y та у лінійному у координаті x.

Розглянемо приклад, у якому графік функції y(x) = exp(x) / xпобудований тричі: у логарифмічному масштабі, у напівлогарифмічному масштабі у осі х та у напівлогарифмічному масштабі в осі у. Сукупність графіків, яка є результатом виконання цього прикладу

Приклад

» subplot (3,1,1);

» hc1=loglog(x,exp(x)./x);

» grid on;

» set (hc1,’Color’,[0,0,0],’LineWidth’,2);

» subplot (3,1,2);

» hc2=semilogx(x,exp(x)./x);

» set (hc2,’Color’,[0,0,0],’LineWidth’,2);

» grid on;

» subplot (3,1,3);

» hc3=semilogy(x,exp(x)./x);

» set (hc3,’Color’,[0,0,0],’LineWidth’,2)

» grid on;


Стовпчикові діаграми та гістограми

Стовпчикові діаграми широко використовують в економіці та математиці. Для побудови стовпчикових діаграм використовують функцію bar різних модифікацій. Наприклад, функція bar(x, y) будує стовпчиковий графік значень вектора у із описанням положення та ширини стовпчиків, заданих значеннями вектора х, при цьому значення елементів вектора х повинні зростати. Розглянемо приклад побудови графіка функції e–x/2у вигляді стовпчикової діаграми в діапазоні значень х є [–2,9; 2,9] з кроком 0,2.

Приклад

»x=-2.9:0.2:2.9;

»hc=bar(x,exp(?x.*x));

»get (hc)

CData = [ (4 by 30) double array]

CDataMapping = scaled

FaceVertexCData = [ (151 by 1) double array]

EdgeColor = [0 0 0]

EraseMode = normal

FaceColor = flat

Faces = [ (30 by 4) double array]

LineStyle = ?

LineWidth = [0.5]

Marker = none

MarkerEdgeColor = auto

MarkerFaceColor = none

MarkerSize = [6]

Vertices = [ (151 by 2) double array]

XData = [ (4 by 30) double array]

YData = [ (4 by 30) double array]

ZData = []

FaceLighting = flat

EdgeLighting = none

BackFaceLighting = reverselit

AmbientStrength = [0.3]

DiffuseStrength = [0.6]

SpecularStrength = [0.9]

SpecularExponent = [10]

SpecularColorReflectance = [1]

VertexNormals = [ (151 by 3) double array]

NormalMode = auto

ButtonDownFcn =

Children = []

Clipping = on

CreateFcn =

DeleteFcn =

BusyAction = queue

HandleVisibility = on

HitTest = on

Interruptible = on

Parent = [72.0009]

Selected = off

SelectionHighlight = on

Tag =

Type = patch

UIContextMenu = []

UserData = []

Visible = on

»set (hc,’FaceColor’,’black’);

»title(‘Стовпчиковадіаграмафункціїy(x) = exp(–x^2)’);

»xlabel (‘Аргумент функції’);

»ylabel (‘Значення функції’);

 

Розглянемо тепер приклад побудови гістограм розподілу випадкових величин. Формат функції побудови гістограми hist такий:

hist(y, x)

де y— вектор, для якого необхідно побудувати гістограму, х— інший вектор, що визначає інтервали зміни значень вектора y, для яких підраховується кількість значень y до заданого інтервалу. Важливо, що функція hist виконує одразу дві дії: будує стовпчикову діаграму для підрахованого числа елементів як Стовпчикова діаграма функції y(x) = exp(–x2) Значення функції Аргумент функції функцію зазначених вектором х діапазонів, і повертає вектор кількості елементів для кожного діапазону. Для виконання цієї дії функція hist записується в іншому форматі:

v = hist(y, x)

де v — вектор результату.

Побудуємо гістограму розподілу випадкових чисел, які генеруються математичною функцією randn.

Приклад

»x=-3:0.2:3;

»y=randn(1000,1);

»hist(y,x);

»grid on

»h=hist(y,x)

Columns 1 through 12

0 0 3 7 8 9 11 23 33 43 57 55

Columns 13 through 24

70 62 83 93 68 70 65 41 35 27 21

Columns 25 through 31

12 5 6 3 2 1 0

 

Функція randn генерує 1000 випадкових чисел на інтервалі [–3; 3]. У результаті роботи цієї програми з’являється гістограма.

 

З невеликими відхиленнями закон розподілу згенерованої випадкової величини близький до нормального. Якщо збільшити кількість чисел, які генеруються, збіг із нормальним законом буде більшим,яка є результатом виконання таких командних рядків:

Приклад

»x=?3:0.2:3;

»y=randn(1e6,1);

»hist(y,x);

»grid on

 

Сходинкові графіки

У фізиці та електроніці часто необхідно зображувати графіки функцій у вигляді сходинок, які проходять через дискретні відліки. Такі графіки відображають процес квантування функцій по одній зі змінних, у цьому разі між точками відліків значення функції вважаються постійними. Для побудови таких графіків у MatLab є функція stairs. Можливі формати функції:

stairs(y) — побудова сходинкового графіка за даними вектора у. Значення аргументу відповідає порядковому номеру даних;

stairs(y, x) — будує сходинкову функцію у(х), зміна значень аргументу задається вектором х.

 

Приклад

»x=0:0.1*pi:4*pi;

»y=sin(x);

»hc=stairs(y,x);

»set (ch,’Color’,[0,0,0],’LineWidth’,2);

 

У наведеному графіку дискретизація значень осі абсцис є постійною величиною, висота сходинок змінюється залежно відфункції.

Приклад

»subplot(2,1,1);

»x=0:0.01*pi:4*pi;

»y=sin(x);

»ch=stairs(x,y);

»grid on

»set (ch,’Color’,[0,0,0],’LineWidth’,2);

»v=title(‘???? 0.01*pi’);

»set (v,’FontName’,’@Arial Unicode MS’, ‘Font-Size’,12);

»subplot(2,1,2);

»x=0:0.3*pi:4*pi;

»y=sin(x);

»ch=stairs(x,y);

»grid on

»set (ch,’Color’,[0,0,0],’LineWidth’,2);

»v=title(‘ ???? 0.01*pi’);

»set (v,’FontName’,’@Arial Unicode MS’, ‘Font?Size’,12);

 

Сходинкові функції відповідають інтерполяції точок відліку функціями нульового порядку, тобто постійними значеннями, а команда MatLab plot будує графіки з інтерполяцією першого порядку, тобто ламаними лініями. Сходинкові функції, широко використовуються в електроніці для аналізу аналого-цифрових та цифроаналогових перетворень. Недоліком подання сходинкових функцій через команду MatLab stairs є неможливість дискретизації рівнів відліку за оссю ординат, тому реальні сходинкові функції здискретизацією рівнів по обох осях, необхідно будувати засобами програмування, використовуючи при обчисленнях функції округлення

Последнее изменение этой страницы: 2016-06-09

lectmania.ru. Все права принадлежат авторам данных материалов. В случае нарушения авторского права напишите нам сюда...