gráficos planos 2d

22
MATLAB - MATLAB - Matrix Laboratory Matrix Laboratory Adaptado de Profa. Carla Salso Freitas e profa. Luciana Nedel Por Profa. Patrícia Jaques

Upload: harry

Post on 18-Jan-2016

52 views

Category:

Documents


0 download

DESCRIPTION

MATLAB - Matrix Laboratory Adaptado de Profa. Carla Salso Freitas e profa. Luciana Nedel Por Profa. Patrícia Jaques. Gráficos planos 2D. O comando plot cria gráficos de x-y no plano; - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Gráficos planos 2D

MATLAB - MATLAB - Matrix LaboratoryMatrix LaboratoryAdaptado de Profa. Carla Salso Freitas

e profa. Luciana NedelPor Profa. Patrícia Jaques

Page 2: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 2

Gráficos planos 2DGráficos planos 2D

• O comando plot cria gráficos de x-y no plano; • Se x e y são vetores de mesmo tamanho, o comando

plot(x,y) abre uma janela gráfica e desenha um gráfico x-y dos elementos de x versus os elementos de y.

• Exemplo: – x=[-2 -1 0 1 2]; – y=x.^2; – plot(x,y)

Page 3: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 3

Gráficos planos 2DGráficos planos 2D

• Se "x" é um vetor, "plot(x)" produz um gráfico linear dos elementos de "x" versus o índice dos elementos de "x". Por exemplo, para plotar o vetor "x":

x = [0.0 0.48 0.84 1.0 0.91 0.6 0.14];

plot(x)

Page 4: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 4

Gráficos planos 2DGráficos planos 2D

• O comando grid coloca uma grade de linhas sobre o gráfico atual. – x = -1.5:0.01:1.5; – y= exp(-x.^2); – plot(x,y)– grid

Page 5: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 5

+ gráficos+ gráficos

• Gráficos podem ter títulos, eixos rotulados e textos. Para isso usa-se os seguintes comandos que tem strings como argumentos:– title título do gráfico – xlabel rótulo do eixo x – ylabel rótulo do eixo y– gtext texto posicionado interativamente (mouse ou setas) – grid linhas de grade

» title 'Título'» xlabel('x')» ylabel ('y')

Page 6: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 6

Exemplo:

x = 0:pi/100:2*pi;y = sin(x);plot(x,y);%o caracter \pi cria o símbolo xlabel('x = 0:2\pi'); ylabel('Seno de x');title('Função Seno');

gtext ('y = sin(x)');

+ gráficos+ gráficos

Page 7: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 7

Gráficos planos 2D múltiplosGráficos planos 2D múltiplos

• Fazer gráficos múltiplos em uma única janela. • Exemplo 1:

– x=0:0.01:2*pi; – y1=sin(x); – y2=sin(2*x); – y3=sin(4*x); – plot(x,y1,x,y2,x,y3)

Page 8: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 8

+ gráficos+ gráficos

• É possível alterar os caracteres de tipo de linha e de ponto usados como padrão.

• Exemplo:– x=0:0.01:2*pi; – y1=sin(x); – y2=sin(2*x); – y3=sin(4*x);

• xlabel('x'), plot(x,y1,'--',x,y2,'*',x,y3,'+')

Linha: tracejado

Marcador: *

Marcador: +

Page 9: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 9

+ gráficos+ gráficos

• Tipos de linha: – sólido (-), – tracejado (--), – pontilhado (:), – traço e ponto (-.)

• Tipos de Marcadores: – ponto (.), – sinal de adição (+), – asterisco (*), – círculo (o), – letra x (x) – Quadrado (s)– Triangulo (v)– Losango (d)– Hexágono (h)

• Cores: – Amarelo (y)– Magenta (m)– Verde (g)– Azul (b)– Preto (k)– Vermelho (r) – Ciano (c)

Page 10: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 10

+ gráficos+ gráficos

• Exemplo:x1 = 0:pi/100:2*pi;x2 = 0:pi/10:2*pi;plot(x1,sin(x1),'r:',x2,sin(x2), 'b+')

Vermelho pontilhado

Azul com sinal de +

Page 11: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 11

Gráficos planos 2DGráficos planos 2D

• O comando subplot pode ser usado para particionar a tela e permite a apresentação simultânea de vários gráficos não superpostos.

• Exemplo:– ...

Page 12: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 12

Gráficos planos 2DGráficos planos 2D

– x=0:0.01:2*pi; – y1=sin(x); – y2=sin(2*x); – y3=sin(3*x); – y4=sin(4*x)+cos(x); – y5=cos(2*x)+sin(3*x); – subplot(2,2,1), plot(y1) – subplot(2,2,2), plot(y2) – subplot(2,2,3), plot(y3) – subplot(2,2,4), plot(y4)

Page 13: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 13

Gráficos planos 2DGráficos planos 2D

– x=0:0.01:2*pi; – y1=sin(x); – y2=sin(2*x); – y3=sin(3*x); – y4=sin(4*x)+cos(x); – y5=cos(2*x)+sin(3*x); – subplot(2,3,1), plot(y1) – subplot(2,3,2), plot(y2) – subplot(2,3,3), plot(y3) – subplot(2,3,4), plot(y4) – subplot(2,3,5), plot(y5)

Page 14: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 14

Estilos de linhasEstilos de linhas

x = 0:0.05:1;

subplot(2,2,1),plot(x,x.^2,'-')

subplot(2,2,2),plot(x,x.^2,':')

subplot(2,2,3),plot(x,x.^2,'-.')

subplot(2,2,4),plot(x,x.^2,'--')

Linha

coluna

posição

Page 15: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 15

Estilos de símbolosEstilos de símbolos

x = 0:0.1:1;

subplot(4,3,1),plot(x,x.^2,'.')

subplot(4,3,2),plot(x,x.^2,'o')

subplot(4,3,3),plot(x,x.^2,'x')

subplot(4,3,4),plot(x,x.^2,'+')

subplot(4,3,5),plot(x,x.^2,'*')

subplot(4,3,6),plot(x,x.^2,'s')

subplot(4,3,7),plot(x,x.^2,'d')

subplot(4,3,8),plot(x,x.^2,'v')

subplot(4,3,9),plot(x,x.^2,'^')

subplot(4,3,10),plot(x,x.^2,'<')

subplot(4,3,11),plot(x,x.^2,'p')

subplot(4,3,12),plot(x,x.^2,'h')

Page 16: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 16

Gráficos – outros comandos para plotar Gráficos – outros comandos para plotar

• Comandos de plotarx=0:10;

y=x.^2;– plot(x, y) – gera gráficos lineares– semilogx(x, y) – gráfico com escala linear para y e escala

logarítmica para x• eixo x é log10 e o eixo y é linear

– semilogy(x, y) – a escala logarítmica é para y• eixo x é linear e o eixo y é log10

– loglog(x, y) – escala logarítmica para ambos (x e y)• plota usando a escala log10xlog10

– bar(x,y) - mostra um gráfico de barras

Page 17: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 17

Gráficos em malhas 3DGráficos em malhas 3D

• É possível desenhar superfícies em malhas 3D com a função mesh.

• O comando mesh(z) cria um desenho 3D em perspectiva dos elementos da matriz z.

• A superfície da grade é definida pelas coordenadas z dos pontos, acima de uma grade retangular no plano x-y.

Page 18: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 18

Gráficos em malhas 3DGráficos em malhas 3D

• Para desenhar o gráfico de uma função z = f(x,y), utiliza-se o comando "meshgrid“–dados dois vetores "k" e "w", contendo as coordenadas dos eixos x-y, a função "meshgrid" retorna duas matrizes "x" e "y" contendo uma "malha" de coordenadas necessária para a geração de superfícies

[x,y] = meshgrid(-2:0.2:2,-2:0.2:2);

z= x.*exp(-x.^2-y.^2);

mesh(x,y,z);

xlabel('x');

ylabel('y');

zlabel('z');

title('Gráfico 3D')

  Lembrete:exp(x)=ex

e=2.7182818282-4=1/24=1/16

Page 19: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 19

• Pode-se, ainda, utilizar o comando contour que mostra a projeção da superfície acima do plano xy com 10 iso-linhas:

[x,y] = meshgrid(-2:0.2:2,-2:0.2:2);

z= x.*exp(-x.^2-y.^2);

contour(z,10);

xlabel('x');

ylabel('y');

zlabel('z');

title('Gráfico 3D')

Page 20: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 20

• Para preencher a superfície plotada, o MatLab oferece o comando surfc:

[x,y] = meshgrid(-2:0.2:2,-2:0.2:2);

z= x.*exp(-x.^2-y.^2);

contour(z,10)

surfc(x,y,z)

xlabel('x');

ylabel('y');

zlabel('z');

title('Gráfico 3D')

Page 21: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 21

Gráficos em malhas 3DGráficos em malhas 3D

• Exemplo:– xx=-2:.1:2; – yy=xx; – [x,y]=meshgrid(xx,yy); – z=exp(-x.^2-y.^2); – mesh(z)

• As primeiras linhas podem ser omitidas, se modificarmos a linha de meshgrid para: – [x,y]=meshgrid(-2:.1:2, -2:.1:2);

Page 22: Gráficos planos 2D

MATLAB - INF01040 - Profa. Patrícia Jaques 22

Trabalho – enviar para [email protected] – enviar para [email protected]