leksion nr 6 - wordpress.com · ndërtimi i grafikut. krijimi i rrjetës dhe i sipërfaqeve...
TRANSCRIPT
Leksion nr 6
Grafikët dy dhe tre dimensional
1
Komanda line
2
line(x, y, 'property name', property value)
Keto vlera jane opsionale, mund të përdoren për të specifikuar
stilin e vijës, ngjyrën dhe gjerësinë e saj, llojin e shënjuesit,
madhësinë, konturet dhe ngjyrat e mbushjes.
line(x,y,'linestyle' , '--', 'color', 'r’ ','marker', 'o')
Dallimi midis komandes plot dhe komandes line është se komanda plot nderton një
grafik të ri çdo herë që ekzekutohet, ndërsa komanda line shton grafik ne nje një
grafik që tashmë ekziston. Për të bërë një figure që ka disa grafikë brenda saj,
komanda plot egzekutohet fillimisht dhe pastaj komanda line e cila shton grafiket
3
x=[-2:0.01:4];
y=3*x.^3-26*x+6;
yd=9*x.^2-26;
ydd=18*x;
plot(x,y, 'Linestyle' , '-', 'color', 'b')
line(x,yd, 'Linestyle' , '--', 'color', 'r')
line(x,ydd, ‘linestyle' , ':', 'color', ‘k')
4
Grafikët me boshtet logaritmike
semilogy(x,y)
semilogx(x,y)
log log(x,y)
Ndërton grafikun me shkallë logaritmike për y dhe
shkallë lineare për x.
Ndërton grafikun me shkallë logaritmike për x dhe
shkallë lineare për y.
Ndërton grafikun me te dy boshtet me shkallë logaritmike.
Shembuj ndertimi i grafikut per funksionin ( 0.2 10)2 xy
5
0 10 20 30 40 50 600
200
400
600
800
1000
1200
Linear
Lin
ear
x=linspace(0.1,60,1000);
y=2.^(-0.2*x+10);
plot(x,y)
Grafikët me boshtet logaritmike
6
Grafikët me boshtet logaritmike
0 10 20 30 40 50 6010
-1
100
101
102
103
104
Linear
Logaritm
ik
x=linspace(0.1,60,1000);
y=2.^(-0.2*x+10);
semilogy(x,y)
7
Grafikët me boshtet logaritmike
10-1
100
101
102
0
200
400
600
800
1000
1200
Logaritmik
linear
x=linspace(0.1,60,1000);
y=2.^(-0.2*x+10);
semilogx(x,y)
8
Grafikët me boshtet logaritmike
10-1
100
101
102
10-1
100
101
102
103
104
Logaritmik
Logaritm
ik
x=linspace(0.1,60,1000);
y=2.^(-0.2*x+10);
loglog(x,y)
9
Ndërtimi i disa grafikëve në të njejtën faqe
• Komanda subplot(m,n,p) :
Komanda e ndan Figure Window në mxn nën
grafikë drejtkëndorë.
>> subplot(2,3,1);
>> subplot(2,3,4);m
n
P=1 P=2 P=3
P=4
10
Subplot-Shembull
x = [0:pi/100:2*pi];
y = sin(x);
subplot(2,2,1), plot(x,y)
xlabel('x'),ylabel('sin 3 pi x')
subplot(2,2,2), plot(x,cos(3*pi*x))
xlabel('x'),ylabel('cos 3 pi x')
subplot(2,2,3), plot(x,sin(6*pi*x))
xlabel('x'),ylabel('sin 6 pi x')
subplot(2,2,4), plot(x,cos(6*pi*x))
xlabel('x'),ylabel('cos 6 pi x')
11
Subplot-Shembull
12
Diagramat me grafik special
Ndërtimi i grafikëve
vertikal me shtylla
yr=1988:1994;
sl=[8 16 14 22 3 18 21];
bar(yr,sl,'r')
xlabel('YEAR')
ylabel('SALES-MILLION')
Grafiket Vertikal me shtylla
bar(x,y)
13
Diagramat me grafik special
Ndërtimi i grafikëve
horizontal me shtylla
yr=1988:1994;
sl=[8 16 14 22 3 18 21];
barh(yr,sl,'r')
xlabel('YEAR')
ylabel('SALES-MILLION')
Grafiket Horizontal me shtylla
barh(x,y)
14
Diagramat me grafik special
Ndërtimi i grafikëve
shkallë
yr=1988:1994;
sl=[8 16 14 22 3 18 21];
stairs(yr,sl,'r')
xlabel('YEAR')
ylabel('SALES-MILLION')
Grafikët me shkallë
stairs(x,y)
15
Diagramat me grafik special
Ndërtimi i grafikëve
me kampione të ndryshme
clc
yr=1988:1994;
sl=[8 16 14 22 3 18 21];
stem(yr,sl,'r')
xlabel('YEAR')
ylabel('SALES-MILLION')
Ndërton grafik me kampione
stem(x,y)
16
Diagramat me grafik special
Ndërton grafikë në
formë rrethore.
clc
grade=[11 18 5 9 26]
pie(grade)
title('Class Grades')
Ndërton grafikë rrethorë
pie(x)
17
Diagramat polare
clc
t= linspace(0,2*pi);
r=sin(2*t).*cos(2*t);
polar(t,r)
polar(theta, radius, ‘specifikimet e vijës’)
Kordinatat polare , në të cilën pozicioni i një pike në plan përcaktohet nga
Këndi ϴ dhe rrezja e pikës. Komanda polar perdoret për të ndërtuar grafikët
e funksioneve në kordinata polare. Komanda ka formën:
18
Histogramet
Histogramet janë grafike që tregojnë shpërndarjen e të dhënave. Gama e
përgjithshme e nje grupi i caktuar i pikave të të dhënave ndahet në subrange
(binar), dhe histogrami tregon sa pika të dhënash janë në çdo bin. Histogrami
është një grafik vertikal në të cilin gjerësia e secilës shtyllë është e barabartë
me intervalin e bin përkatës dhe lartësinë qe i korrespondon të dhënave në çdo
bin.
hist( y )
>> y=[58 73 73 53 50 48 56 73 73 66 69 63 74 82 84 91 93 89
91 80 59 69 56 64 63 66 64 74 63 69];
>> hist( y )
>> hist( y, 3)
ose hist( y, nbins) ose hist( y, x)
19
Ndërtimi i Diagramave Tre-dimensionale
t=0:0.1:6*pi;
x=sqrt(t).*sin(2*t);
y=sqrt(t).*cos(2*t);
z=0.5.*t;
plot3(x,y,z)
grid on
Grafikët 3D: Një komandë e cila shërben për ndërtimin e grafikeve 3D është komanda
plot3 e cila është e ngjashme me komandën plot.
-5
0
5
-5
0
50
2
4
6
8
10
plot3(x, y, z, 'specifikimi i vijes', 'specifikimi i shenjuesit')
20
Rrjetat dhe ndërtimi i sipërfaqeve
Rjetat dhe sipërfaqet janë diagrama 3D që përdoren për të ndërtuar
funksione të formës z=f(x,y) ku x dhe y janë variablat e pavarur dhe z
është variabli që ka varësi nga x dhe y. Rrjetat dhe sipërfaqet
ndërtohen me tre hapa :
1. Krijimi i rrjetës në planin x dhe y.
2. Llogaritja e z për cdo vlerë të rrjetës.
3. Ndërtimi i grafikut.
Krijimi i rrjetës dhe i sipërfaqeve realizohet nga komandat ‘mesh’ dhe
‘surf’ të cilat kanë formën:
mesh(X,Y,Z) dhe surf(X,Y,Z)
Rrjeta ndërtohet nga vija që bashkojnë pikat ndërsa në sipërfaqe
hapësirat brenda rrjetave ngjyrosen. Diagramat që krijohen kanë ngjyra
të ndryshme , ngjyrat mund te ndryshohen me anë të Plot Editor në
Figurë WindoW më pas ndryshohet ngjyra në listën Mesh properties
ose duke përdorur komandën ‘color map(C)’ ku C eshtë një vektor me 3
elementë në të cilin i pari specifikon intesitetin e të kuqes, i dyti i
jeshiles dhe i treti të blusë. Cdo element mund të jetë një numër
ndërmjet 0 dhe 1.
Shembulli diagramës 3D
21
Të ndërtohet rrjeta dhe sipërfaqja për funksionin
Ku xϵ[-3,3] dhe yϵ[-3,3].
Ndërtimi i rrjetës
x=-3:0.25:3;
y=-3:0.25:3;
[X,Y] = meshgrid(x,y);
Z=1.8.^(-1.5*sqrt(X.^2+ Y.^2)).*cos(0.5*Y).*sin(X);
mesh(X,Y,Z)
xlabel('x'); ylabel('y')
zlabel('z')
-4
-2
0
2
4
-4
-2
0
2
4-0.4
-0.2
0
0.2
0.4
xy
z
)5,0cos(sin8,1225.1
yxzyx
22
Ndërtimi i sipërfaqes
x=-3:0.25:3;
y=-3:0.25:3;
[X,Y] = meshgrid(x,y);
Z=1.8.^(-1.5*sqrt(X.^2+ Y.^2)).*cos(0.5*Y).*sin(X);
surf(X,Y,Z)
xlabel('x'); ylabel('y')
zlabel('z')
-4
-2
0
2
4
-4
-2
0
2
4-0.4
-0.2
0
0.2
0.4
xy
z
Shembulli diagramës 3D
Shembulli diagramës 3D
23
meshc(x,y,z)Ndërton konture nën rrjetë.
x=-3:0.25:3;
y=-3:0.25:3;
[X,Y] = meshgrid(x,y);
Z=1.8.^(-1.5*sqrt(X.^2+ Y.^2)).*cos(0.5*Y).*sin(X);
meshc(X,Y,Z)
xlabel('x'); ylabel('y')
zlabel('z')
-4
-2
0
2
4
-4
-2
0
2
4-0.4
-0.2
0
0.2
0.4
xy
z
Shembulli diagramës 3D
24
surfc(x,y,z)Ndërton konture nën sipërfaqe.
x=-3:0.25:3;
y=-3:0.25:3;
[X,Y] = meshgrid(x,y);
Z=1.8.^(-1.5*sqrt(X.^2+ Y.^2)).*cos(0.5*Y).*sin(X);
surfc(X,Y,Z)
xlabel('x'); ylabel('y')
zlabel('z')
-4
-2
0
2
4
-4
-2
0
2
4-0.4
-0.2
0
0.2
0.4
xy
z
25
surfl(x,y,z)
Ndërton sipërfaqe me dritë.
x=-3:0.25:3;
y=-3:0.25:3;
[X,Y] = meshgrid(x,y);
Z=1.8.^(-1.5*sqrt(X.^2+ Y.^2)).*cos(0.5*Y).*sin(X);
surfl(X,Y,Z)
xlabel('x'); ylabel('y')
zlabel('z')
-4
-2
0
2
4
-4
-2
0
2
4-0.4
-0.2
0
0.2
0.4
xy
z
Shembulli diagramës 3D
26
waterfill(x,y,z)
Ndërton rrjetën vetëm në një drejtim.
x=-3:0.25:3;
y=-3:0.25:3;
[X,Y] = meshgrid(x,y);
Z=1.8.^(-1.5*sqrt(X.^2+ Y.^2)).*cos(0.5*Y).*sin(X);
waterfall(X,Y,Z)
xlabel('x'); ylabel('y')
zlabel('z')
-4
-2
0
2
4
-4
-2
0
2
4-0.4
-0.2
0
0.2
0.4
xy
z
Shembulli diagramës 3D
27
countour3(x,y,z,n)
Ndërton diagramë 3D me konture.
x=-3:0.25:3;
y=-3:0.25:3;
[X,Y] = meshgrid(x,y);
Z=1.8.^(-1.5*sqrt(X.^2+ Y.^2)).*cos(0.5*Y).*sin(X);
contour3(X,Y,Z,6)
xlabel('x'); ylabel('y')
zlabel('z')
-3-2
-10
12
3
-2
0
2
-0.4
-0.2
0
0.2
0.4z
xy
Shembulli diagramës 3D
28
countour(x,y,z,n)
Ndërton diagramë 2D me konture.
x=-3:0.25:3;
y=-3:0.25:3;
[X,Y] = meshgrid(x,y);
Z=1.8.^(-1.5*sqrt(X.^2+ Y.^2)).*cos(0.5*Y).*sin(X);
contour(X,Y,Z,6)
xlabel('x'); ylabel('y')
zlabel('z')
x
y
-3 -2 -1 0 1 2 3-3
-2
-1
0
1
2
3
Shembulli diagramës 3D
29
Diagramat me grafik special
Ndërtimi i një sfere
[X,Y,Z] = sphere(n);
surf(X,Y,Z)
Ndërtimi i një sfere
sphere(n)
-1
-0.5
0
0.5
1
-1
-0.5
0
0.5
1-1
-0.5
0
0.5
1
30
Diagramat me grafik special
Ndërtimi i një cilindri
[X,Y,Z] = cylinder(r);
Shembull
t=linspace(0,pi,20);
r=1+sin(t);
[X,Y,Z] = cylinder(r);
surf(X,Y,Z)
axis square
Ndërtimi i një cilindri
cylinder(r)
-2
-1
0
1
2
-2
-1
0
1
2
0
0.2
0.4
0.6
0.8
1
31
Diagramat me grafik special
Ndërtimi i shtyllave 3D
Y=[1 6.5 7;2 6 7;3 5.5 7;
4 5 7;3 4 7;2 3 7; 1 2 7];
bar3(Y)
Ndërtimi i shtyllave 3D
bar3(Y)
12
3
1
2
3
4
5
6
7
0
2
4
6
8
32
Diagramat me grafik special
Ndërtimi i grafikëve 3D me
kampione
t=0:0.2:10;
X=t;
Y=sin(t);
Z=t.^1.5;
stem3(X,Y,Z,’fill’)
grid on
Ndërtimi i grafikut 3D me kampione
stem3(X,Y,Z)
02
46
810
-1
-0.5
0
0.5
10
10
20
30
40
33
Diagramat me grafik special
Ndërtimi i grafikëve 3D me
formë rrethore
X=[5 9 14 20];
explode=[0 0 1 0];
pie3(X,explode)
Ku explode është një vektorë me të njejtën madhësi me x
me 0 dhe 1.Njëshi 1 tregon pjesën e shkeputur nga qendra.
Ndërtimi i grafikut në formë rretore
pie3(x,explode)
42%
29%
10%
19%
Komanda View
34
Komanda kontrollon drejtimin nga i cili shikohet figura. Kjo bëhet
duke specifikuar drejtimin në termat e këndeve azimut dhe
elevation.Për të vendosur këndin e shikimit të figurës komanda
view ka formën:
view(az,el) ose view([az,el])
az• është këndi azimuth në gradë i cili është një kënd në planin
x-y i matur në mënyrë relative nga boshti negativ y dhe
përcaktohet si pozitivë në drejtim të akrepave të orës.
el• është këndi (në gradë) nga plani x-y.
Këndet• zakonisht janë az=-37.5 ̊ dhe el 30 ̊.
Shembull: Komanda View
35
Sipërfaqja e ndërtuar më sipër të shikohet në këndet
az=30 ̊ dhe el=35 ̊.
x=-3:0.25:3;
y=-3:0.25:3;
[X,Y]=meshgrid(x,y);
Z=1.8.^(1.5*sqrt(X.^2+Y.^2)).*cos(0.5*Y).*sin(X);
surf(X,Y,Z)
view(20,35)
-3-2
-10
12
3-4
-2
0
2
4
-0.4
-0.2
0
0.2
0.4
Komanda View
36
Duke zgjedhur këndet azimuth dhe el evation komanda view
mund të përdoret për të ndërtuar projeksionin e figurave 3D
në plane të ndryshme sipas tabelës së mëposhtme:
Projektimi i planeve vlera az vlera el
x y(pamja nga lart) 0 90
x z(pamje anësore) 0 0
y z(pamje anësore) 90 0
Shembull: Komanda View
37
Sipërfaqja e ndërtuar më sipër të shikohet në
këndet az=0 dhe el=90.
t=0:0.1:6*pi;
x=sqrt(t).*sin(2*t);
y=sqrt(t).*cos(2*t);
z=0.5*t;
plot3(x,y,z,'k','linewidth',1)
view(0,90)
grid on
xlabel('x'); ylabel('y')
zlabel('z')
-5 -4 -3 -2 -1 0 1 2 3 4 5-5
-4
-3
-2
-1
0
1
2
3
4
5
x
y
Shembull: Komanda View
38
Sipërfaqja e ndërtuar më sipër të shikohet në këndet az=0
dhe el=0.
x=-3:0.25:3;
y=-3:0.25:3;
[X,Y]=meshgrid(x,y);
Z=1.8.^(1.5*sqrt(X.^2+Y.^2)).*cos(0.5*Y).*sin(X);
mesh(X,Y,Z)
view(0,0)
-3 -2 -1 0 1 2 3-0.4
-0.3
-0.2
-0.1
0
0.1
0.2
0.3
0.4
Shembull: Komanda View
39
Sipërfaqja e ndërtuar më sipër të shikohet në këndet
az=90 dhe el=0.
x=-3:0.25:3;
y=-3:0.25:3;
[X,Y]=meshgrid(x,y);
Z=1.8.^(1.5*sqrt(X.^2+Y.^2)).*cos(0.5*Y).*sin(X);
mesh(X,Y,Z)
view(90,0)
-3 -2 -1 0 1 2 3-8
-6
-4
-2
0
2
4
6
8