Buscar

aula-10-graficos-2d-3d-29-05-2017

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 35 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

DESENHANDO	
  GRÁFICOS	
  –	
  2D	
  
Gráfico	
  em	
  forma	
  de	
  torta	
  ou	
  pizza:	
  função	
  pie(	
  )	
  
Forma	
  geral:	
  
a:	
  vetor	
  contendo	
  valores.	
  
b:	
  vetor	
  lógico	
  opcional	
  que	
  descreve	
  quais	
  “faOas”	
  
devem	
  ser	
  separadas	
  do	
  resto.	
  
	
  
	
  
pie(a,	
  b)	
  
	
  	
  	
  	
  
	
  
Exemplos:	
  
a)	
  >>	
  a	
  =	
  [0.5	
  1	
  1.6	
  1.2	
  0.8	
  2.1];	
  
	
  	
  	
  	
  >>	
  pie(a,	
  a==max(a))	
  
	
  
Plota	
  a	
  %	
  de	
  cada	
  	
  
valor	
  do	
  vetor	
  a	
  
	
  
Total=7,2	
  
0,5	
  =	
  7%	
  
1	
  =	
  14%	
  
....	
  
	
  
	
  
	
  
	
  
Exemplos:	
  
b)	
  >>	
  b	
  =	
  [1	
  0	
  1	
  0	
  1	
  0];	
  
	
  	
  	
  	
  >>	
  pie(a,	
  b)	
  
	
  
	
  
	
  
DESENHANDO	
  GRÁFICOS	
  –	
  2D	
  
Histogramas	
  
É	
   um	
   Opo	
   parOcular	
   de	
   gráfico	
   de	
   barras	
   que	
  
mostra	
   a	
   frequência	
   de	
   ocorrência	
   de	
   valores	
   em	
  
um	
  vetor.	
  
	
  
y:	
  cria	
  um	
  histograma	
  para	
  os	
  dados	
  do	
  vetor	
  y.	
  (10	
  
divisões)	
  
n:	
  é	
  um	
  escalar	
  –	
  n	
  divisões.	
  
x:	
  é	
  um	
  vetor	
  –	
  usa	
  as	
  divisões	
  especificadas	
  em	
  x.	
  
	
  
hist(y)	
  
hist(y,	
  n)	
  
hist(y,	
  x)	
  
	
  	
  	
  	
  
	
  
Exemplos:	
  
a)	
  >>	
  y	
  =	
  [1	
  0	
  3	
  2	
  1	
  1	
  0	
  0	
  0	
  3	
  2	
  2	
  2	
  2	
  2];	
  
	
  	
  	
  	
  >>	
  hist(y)	
  
	
  
	
  
	
  
Exemplos:	
  
b)	
  >>	
  y	
  =	
  [1	
  0	
  3	
  2	
  1	
  1	
  0	
  0	
  0	
  3	
  2	
  2	
  2	
  2	
  2];	
  
	
  	
  	
  	
  >>	
  hist(y,	
  20)	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
Exemplos:	
  
c)	
  >>	
  y=randn(500,1);	
  %retorna	
  uma	
  matriz	
  MxN	
  =	
  (500x1)	
  
	
  	
  	
  	
  >>	
  hist(y)	
  
	
  
	
  
d)	
  >>	
  x	
  =	
  -­‐2.9:0.2:2.9;	
  
	
  	
  	
  	
  >>	
  y=randn(5000,1);	
  
	
  	
  	
  	
  >>	
  hist(y,	
  x)	
  
	
  	
  	
  	
  >>	
  Otle('Hsitograma	
  de	
  distribuição	
  Normal');	
  
	
  
	
  
Sequências	
   discretas	
   de	
   dados	
   podem	
   ser	
  
representadas	
   graficamente	
   por	
   meio	
   da	
   função	
  
stem.	
  
	
  
z:	
   cria	
   um	
   gráfico	
   dos	
   dados	
   conOdos	
   no	
   vetor	
   z	
  
conectados	
  ao	
  eixo	
  horizontal	
  por	
  uma	
  linha.	
  
x:	
  x	
  é	
  uma	
  string	
  que	
  especifica	
  o	
  Opo	
  de	
   linha	
  da	
  
haste.	
  
	
  
stem(z)	
  
stem(x,	
  z)	
  
	
  	
  	
  	
  
Exemplos:	
  
a)	
  >>	
  z	
  =	
  -­‐10:10;	
  
	
  	
  	
  	
  >>	
  stem(z)	
  
b)	
  >>	
  z	
  =	
  randn(30,1);	
  
	
  	
  	
  	
  >>	
  stem(z)	
  
c)	
  >>	
  z	
  =	
  randn(30,1);	
  
	
  	
  	
  	
  >>	
  stem(z,	
  'rp-­‐.')	
  
PráOca	
  1:	
  
Faça	
   um	
   script	
   para	
   plotar	
   um	
   gráfico	
   de	
   torta	
   (pizza)	
  
das	
  temperaturas	
  médias	
  de	
  uma	
  semana,	
  ou	
  seja,	
  leia	
  
as	
   temperaturas	
  médias	
   diárias	
   de	
   7	
   dias	
   (1	
   semana).	
  
Destacar	
  a	
  maior	
  e	
  a	
  menor	
  temperatura.	
  Colocar	
  nome	
  
no	
  gráfico.	
  
PráOca	
  2:	
  
Faça	
  um	
  script	
  para	
  plotar	
  o	
  histograma	
  das	
  médias	
  dos	
  
alunos	
   em	
   uma	
   disciplina	
   da	
   Unesp/Sorocaba,	
  
considerando	
   que	
   a	
   classe	
   possui	
   40	
   alunos.	
   Colocar	
  
nome	
  no	
  gráfico.	
  
PráOca	
  3:	
  
Faça	
   um	
   script	
   para	
   plotar	
   o	
   gráfico	
   da	
   função	
   stem	
  
para	
  o	
   exercício	
  da	
  práOca	
  2.	
   Teste	
   várias	
   cores,	
  Npos	
  
de	
  linhas	
  e	
  marcadores.	
  
	
  
DESENHANDO	
  GRÁFICOS	
  –	
  3D	
  
MatLab	
   possui	
   uma	
   grande	
   variedade	
   de	
   funções	
  
para	
  exibir	
  dados	
  em	
  três	
  dimensões.	
  
As	
  funções	
  podem	
  representar:	
  
! Curvas	
  em	
  3D	
  
! Superncies	
  
! Estruturas	
  de	
  rede	
  
	
  
Gráficos	
  de	
  linhas:	
  plot3	
  
	
  
	
  
	
  
plot3(x,	
  y,	
  z,	
  str)	
  
	
  	
  	
  	
  
Ex.:	
  
>>	
  t=0:0.5:10*pi;	
  
>>	
  plot3(sin(t),	
  cos(t),	
  t)	
  
>>	
  xlabel('sen(t)')	
  
>>	
  ylabel('cos(t)')	
  
>>	
  zlabel('t')	
  
>>	
  grid	
  on	
  
>>	
  Otle('Ex.	
  	
  
	
  	
  Plot	
  3D	
  -­‐	
  Hélice')	
  
Gráfico	
  em	
  forma	
  de	
  torta	
  ou	
  pizza:	
  função	
  pie3(	
  )	
  
Forma	
  geral:	
  
a:	
  vetor	
  contendo	
  valores.	
  
b:	
  vetor	
  lógico	
  opcional	
  que	
  descreve	
  quais	
  “faOas”	
  
devem	
  ser	
  separadas	
  do	
  resto.	
  
	
  
	
  
pie3(a,	
  b)	
  
	
  	
  	
  	
  
>>	
  a	
  =	
  [0.5	
  1	
  1.6	
  1.2	
  0.8	
  2.1];	
  
>>	
  b	
  =	
  [1	
  0	
  1	
  0	
  1	
  0];	
  
>>	
  pie3(a,	
  b)	
  
	
  
stem3:	
   faz	
   o	
   gráfico	
   dos	
   pontos	
   em	
   (X,	
   Y,	
   Z)	
   com	
  
linhas	
  que	
  partem	
  do	
  plano-­‐xy.	
  (matrizes)	
  
	
  
	
  
	
  
	
  
	
  
	
  
Z:	
  valores	
  de	
  Z	
  (gera	
  automaOcamente	
  valores	
  para	
  X	
  e	
  Y).	
  
X	
  e	
  Y:	
  valores	
  para	
  x	
  e	
  y.	
  
	
  
stem3(Z)	
  
stem3(X,	
  Y,	
  Z)	
  
>>	
  Z=rand(3,5)	
  
Z	
  =	
  
	
  	
  	
  	
  0.1419	
  	
  	
  	
  0.7922	
  	
  	
  	
  0.0357	
  	
  	
  	
  0.6787	
  	
  	
  	
  0.3922	
  
	
  	
  	
  	
  0.4218	
  	
  	
  	
  0.9595	
  	
  	
  	
  0.8491	
  	
  	
  	
  0.7577	
  	
  	
  	
  0.6555	
  
	
  	
  	
  	
  0.9157	
  	
  	
  	
  0.6557	
  	
  	
  	
  0.9340	
  	
  	
  	
  0.7431	
  	
  	
  	
  0.1712	
  
>>	
  stem3(Z)	
  
>>	
  Otle('Gráfico	
  stem	
  3D')	
  
>>	
  xlabel('eixo	
  X'),	
  	
  
ylabel('eixo	
  Y'),	
  	
  
zlabel('eixo	
  Z')	
  
>>	
  X	
  =	
  rand(3,5),	
  Y	
  =	
  rand(3,5),	
  Z	
  =	
  rand(3,5)	
  
>>	
  stem3(X,	
  Y,	
  Z)	
  
>>	
  xlabel('eixo	
  X'),	
  ylabel('eixo	
  Y'),	
  zlabel('eixo	
  Z')	
  
>>	
  Otle('Gráfico	
  stem	
  3D	
  variando	
  X	
  e	
  Y')	
  
DESENHANDO	
  SUPERFÍCIES	
  
MatLab	
   possui	
   várias	
   funções	
   para	
   desenhar	
  
superncies.	
  Destaque:	
  
" mesh(	
   ):	
  desenha	
  uma	
  superncie	
  em	
  formato	
  de	
  
arame	
  (rede)	
  
" surf(	
  ):	
  desenha	
  uma	
  superncie	
  preenchida	
  
" contour(	
   ):	
   desenha	
   uma	
   superncie	
   em	
   formato	
  
de	
  contornos	
  
" contour3(	
  ):	
  desenha	
  uma	
  superncie	
  em	
  formato	
  
de	
  contornos,	
  mas	
  em	
  perspecOva	
  3D	
  
Estas	
   funções	
   permitem	
   desenhar	
   uma	
   superncie	
  
que	
  esteja	
  conOda	
  em	
  uma	
  matriz.	
  
DESENHANDO	
  SUPERFÍCIES	
  
Forma	
  geral:	
  
	
  
	
  
	
  
Z:	
   é	
   uma	
  matriz	
   N	
   x	
  M	
   representando	
   os	
   valores	
  
numéricos	
  da	
  superncie	
  a	
  ser	
  desenhada.	
  
X	
   e	
   Y:	
   são	
  matrizes	
  N	
   x	
  M	
   –	
   valores	
   dos	
   eixos	
   da	
  
superncie	
  definida	
  em	
  Z.	
  
	
  
nome_função(Z)	
  
nome_função(X,	
  Y,	
  Z)	
  
	
  	
  	
  	
  
GRÁFICOS	
  DE	
  ARAME	
  (REDE)	
  
MatLab	
  define	
  uma	
  superncie	
  de	
  rede	
  por	
  meio	
  das	
  
c o o r d e n a d a s	
   z	
   ( m a t r i z ) 	
   d o s	
   p o n t o s	
  
correspondentes	
  a	
  uma	
  grade	
  retangular	
  no	
  plano-­‐
xy	
  (matrizes).	
  
Se	
  assemelha	
  a	
  uma	
  rede	
  de	
  pesca	
  com	
  os	
  nós	
  nos	
  
pontos	
  correspondentes	
  aos	
  dados.	
  	
  
Ex.:	
  Função	
  peaks:	
  
	
  
	
   	
   	
   	
   	
  gera	
  uma	
  matriz	
  de	
  N	
  x	
  N	
  pontos.	
  
É	
   uma	
   função	
   obOda	
   pela	
   translação	
   e	
   escala	
   de	
  
uma	
  distribuição	
  gaussiana.	
  
UOlizada	
  para	
  demonstrar	
  algumas	
  funções	
  3D.	
  
	
  
peaks(N)	
  
	
  	
  	
   	
   	
   	
   	
  
	
   	
  	
  
>>	
  [X,	
  Y,	
  Z]	
  =	
  peaks(30)	
  
>>	
  mesh(X,	
  Y,	
  Z)	
  
>>	
  xlabel('eixo	
  X'),	
  ylabel('eixo	
  Y'),	
  zlabel('eixo	
  Z')	
  
>>	
  Otle('Gráfico	
  em	
  rede	
  da	
  função	
  peaks')	
  
GRÁFICOS	
  DE	
  SUPERFÍCIE	
  
Separece	
  com	
  um	
  gráfico	
  de	
  rede,	
  exceto	
  pelo	
  fato	
  
de	
  os	
  espaços	
  entre	
  linhas	
  serem	
  preenchido.	
  
>>	
  [X,	
  Y,	
  Z]	
  =	
  peaks(30);	
  
>>	
  surf(X,	
  Y,	
  Z)	
  
>>	
  Otle('Gráfico	
  de	
  superncie	
  da	
  função	
  peaks')	
  
>>	
  xlabel('eixo	
  X'),	
  
	
  ylabel('eixo	
  Y'),	
  	
  
zlabel('eixo	
  Z')	
  
	
  
GRÁFICOS	
  DE	
  CURVAS	
  DE	
  NÍVEL	
  
Mostram	
  curvas	
  nas	
  quais	
  a	
  elevação,	
  ou	
  altura,	
  é	
  
constante.	
  
>>	
  contour(X,	
  Y,	
  Z)	
  	
  	
  %2D	
  
>>	
  Otle('Gráfico	
  de	
  curvas	
  de	
  nível	
  bidimensional	
  da	
  função	
  peaks')	
  
>>	
  xlabel('eixo	
  X'),	
  	
  
ylabel('eixo	
  Y')	
  
GRÁFICOS	
  DE	
  CURVAS	
  DE	
  NÍVEL	
  
>>	
  contour(X,	
  Y,	
  Z,	
  20)	
  	
  	
  	
  	
  	
  	
  %	
  nº	
  de	
  curvas	
  
>>	
  xlabel('eixo	
  X'),	
  ylabel('eixo	
  Y')	
  
>>	
   Otle('Gráfico	
   de	
   curvas	
   de	
   nível	
   bidimensional	
  
com	
  num.	
  curvas')	
  
>>	
  contour3(X,	
  Y,	
  Z)	
  	
  	
  %3D	
  
>>	
  xlabel('eixo	
  X'),	
  ylabel('eixo	
  Y')	
  
>>	
   Otle('Gráfico	
   de	
   curvas	
   de	
   nível	
   tridimensional	
  
da	
  função	
  peaks')	
  
>>	
  contour3(X,	
  Y,	
  Z,	
  20)	
  	
  	
  %3D	
  com	
  num.	
  curvas	
  
>>	
  xlabel('eixo	
  X'),	
  ylabel('eixo	
  Y'),	
  zlabel('eixo	
  Z')	
  
>>	
   Otle('Gráfico	
   de	
   curvas	
   de	
   nível	
   tridimensional	
  
com	
  num.	
  curvas')	
  
UM	
  JEITO	
  FÁCIL	
  DE	
  CRIAR	
  GRÁFICOS	
  3D	
  
MatLab	
  possui	
  um	
  jeito	
  simples	
  de	
  criar	
  um	
  gráfico	
  
3D	
  sem	
  especificar	
  explicitamente	
  os	
  pontos	
  de	
  um	
  
gráfico	
  (3D).	
  
" ezmesh(	
   ):	
   desenha	
   uma	
   superncie	
   em	
   formato	
  
de	
  arame	
  (rede)	
  
" ezsurf(	
  ):	
  desenha	
  uma	
  superncie	
  preenchida	
  
" ezcontour(	
  ):	
  desenha	
  uma	
  superncie	
  em	
  formato	
  
de	
  contornos	
  
Os	
   argumentos	
   de	
   entrada	
   são	
   funções	
   definidas	
  
por	
  strings.	
  
Ex.:	
  fstr	
  =‘x.^2’	
  
EX.:	
  
>>	
  fstr='x.^2’	
  
fstr	
  =	
  
x.^2	
  
>>	
  ezmesh(fstr)	
  
EX.:	
  
>>	
  fstr='x.^2’	
  
fstr	
  =	
  
x.^2	
  
>>	
  ezsurf(fstr)	
  
EX.:	
  
>>	
  fstr='x.^2’	
  
fstr	
  =	
  
x.^2	
  
>>	
  ezcontour(fstr)	
  
PráOca	
  1:	
  
Faça	
   um	
   script	
   para	
   plotar	
   o	
   gráfico	
   do	
   seno(	
   )	
  
uNlizando	
  as	
  funções:	
  ezmesh,	
  ezsurf	
  e	
  ezcontour.	
  
PráOca	
  2:	
  
Repita	
  a	
  PráNca	
  1	
  plotando	
  agora	
  o	
  gráfico	
  do	
  cos(	
  ).

Outros materiais