introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso...

37
INTRODU INTRODU Ç Ç ÃO AO USO DO PROGRAMA ÃO AO USO DO PROGRAMA COMPUTACIONAL MATLAB COMPUTACIONAL MATLAB Carlos Alberto Alves Varella, Prof. UFRRJ Carlos Alberto Alves Varella, Prof. UFRRJ - - IT/DE. IT/DE. [email protected] [email protected] Joseph Joseph Kalil Kalil Khoury Khoury Junior, Prof. UFRRJ Junior, Prof. UFRRJ - - IT/DE. IT/DE. [email protected] [email protected] Keilla Keilla Boehler Boehler , Aluna do Curso de Engenharia Agr , Aluna do Curso de Engenharia Agr í í cola, UFRRJ. cola, UFRRJ. [email protected] [email protected] UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIRO IT IT Departamento de Engenharia Departamento de Engenharia LABORAT LABORAT Ó Ó RIO DE MECANIZA RIO DE MECANIZA Ç Ç ÃO AGR ÃO AGR Í Í COLA COLA Ambiente de computação para desenvolvimento de sistemas sofisticados

Transcript of introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso...

Page 1: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

INTRODUINTRODUÇÇÃO AO USO DO PROGRAMA ÃO AO USO DO PROGRAMA COMPUTACIONAL MATLABCOMPUTACIONAL MATLAB

Carlos Alberto Alves Varella, Prof. UFRRJCarlos Alberto Alves Varella, Prof. UFRRJ--IT/DE. IT/DE. [email protected]@ufrrj.brJoseph Joseph KalilKalil KhouryKhoury Junior, Prof. UFRRJJunior, Prof. UFRRJ--IT/DE. IT/DE. [email protected]@ufrrj.brKeillaKeilla BoehlerBoehler, Aluna do Curso de Engenharia Agr, Aluna do Curso de Engenharia Agríícola, UFRRJ. cola, UFRRJ. [email protected]@ig.com.br

UNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIROUNIVERSIDADE FEDERAL RURAL DO RIO DE JANEIROIT IT –– Departamento de EngenhariaDepartamento de Engenharia

LABORATLABORATÓÓRIO DE MECANIZARIO DE MECANIZAÇÇÃO AGRÃO AGRÍÍCOLACOLA

Ambiente de computação para desenvolvimento de sistemas sofisticados

Page 2: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

ConteConteúúdodoIntroduIntroduççãoãoPrincipais Recursos do ProgramaPrincipais Recursos do ProgramaJanela Principal do ProgramaJanela Principal do ProgramaPrincipais SubPrincipais Sub--janelas do Programajanelas do ProgramaManipulaManipulaçção de Matrizesão de MatrizesMatrizes e grMatrizes e grááficos para anficos para anáálise de dadoslise de dadosJanelas e FerramentasJanelas e FerramentasComandos de alto nComandos de alto níívelvelOperaOperaçções com Vetoresões com VetoresFunFunçções Matemões MatemááticasticasMatrizesMatrizesComando Comando forfor--switchswitch--casecase--otherwiseotherwise--whilewhilePlotagem de grPlotagem de grááficosficosRepresentaRepresentaçções em coordenadas polaresões em coordenadas polaresArquivos, extensões e rotinasArquivos, extensões e rotinasCriaCriaçção de uma nova funão de uma nova funççãoãoGrGrááficos tridimensionaisficos tridimensionaisMapa de CoresMapa de Cores

Page 3: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

IntroduIntroduççãoão

O programa computacional MATLAB O programa computacional MATLAB éé um ambiente de computaum ambiente de computaçção ão ttéécnicocnico--cientcientíífica para o desenvolvimento de sistemas sofisticados ( fica para o desenvolvimento de sistemas sofisticados ( MATSUMOTO, 2002); MATSUMOTO, 2002); ÉÉ extensivamente usado para exploraextensivamente usado para exploraçção, anão, anáálise e resolulise e resoluçção de ão de problemas em diversas problemas em diversas ááreas do conhecimento;reas do conhecimento;Apresenta diversos pacotes de ferramentas Apresenta diversos pacotes de ferramentas ‘‘toolboxtoolbox’’ que são um que são um conjunto de algoritmos especialmente desenvolvidos para conjunto de algoritmos especialmente desenvolvidos para aplicaaplicaçções especões especííficas.ficas.

Page 4: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Principais Recursos do ProgramaPrincipais Recursos do Programa

Linguagem de altoLinguagem de alto--nníível para computavel para computaçção tão téécnicacnicaAmbiente de desenvolvimento e administraAmbiente de desenvolvimento e administraçção de cão de cóódigo, arquivos, e digo, arquivos, e dados dados Ferramentas interativas para exploraFerramentas interativas para exploraçção, desão, desíígnio e resolugnio e resoluçção de ão de problemas problemas FunFunçções matemões matemááticas para ticas para áálgebra linear, estatlgebra linear, estatíísticas, ansticas, anáálise de lise de Fourier, filtragem, otimizaFourier, filtragem, otimizaçção, e integraão, e integraçção numão numéérica rica FunFunçções para visualizar dados de grões para visualizar dados de grááficos 2ficos 2--D e 3D e 3--D D Ferramentas para construFerramentas para construçção de interfaces com usuão de interfaces com usuáário rio FunFunçções que integram MATLAB funcionam como base de algoritmos ões que integram MATLAB funcionam como base de algoritmos com aplicacom aplicaçções externas e idiomas, como C, C++, Fortran, Java, COM, ões externas e idiomas, como C, C++, Fortran, Java, COM, e Microsoft Excel, e Microsoft Excel,

Page 5: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Janela Principal do ProgramaJanela Principal do Programa

Page 6: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Principais SubPrincipais Sub--janelas do Programajanelas do ProgramaJanela de comandoJanela de comando WorkspaceWorkspace

ComandComand WindowWindow

Page 7: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

ManipulaManipulaçção de Matrizesão de Matrizes

>> >> precosprecos= XLSREAD('exemplo = XLSREAD('exemplo novo.novo.xlsxls');');

>> >> precosprecos

precosprecos ==

15400 18200 4620015400 18200 4620016200 17900 4750016200 17900 4750015150 19000 4800015150 19000 48000

>> quantidade=[3;1;2]>> quantidade=[3;1;2]

quantidade =quantidade =

331122

>> escolha=>> escolha=precosprecos*quantidade*quantidade

escolha =escolha =

156800156800161500161500160450160450

480004800019000190001515015150Revendedor Revendedor CC

475004750017900179001620016200Revendedor Revendedor BB

462004620018200182001540015400Revendedor Revendedor AA

CaminhãoCaminhãoCaminhoneteCaminhoneteAutomAutomóóvelvelRevendedorRevendedorComando XLSREAD(Comando XLSREAD(‘‘*.xls) *.xls) carrega o arquivo que carrega o arquivo que contcontéém os valores;m os valores;Quantidades de cada item Quantidades de cada item determinadas em uma determinadas em uma matriz;matriz;Multiplicando as matrizes Multiplicando as matrizes podepode--se comparar os prese comparar os preçços os total ofertado no total por total ofertado no total por cada revendedor.cada revendedor.

Page 8: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Matrizes e grMatrizes e grááficos para anficos para anáálise de dadoslise de dados>> >> graficografico=[=[precosprecos,escolha],escolha]

graficografico ==

15400 18200 46200 15680015400 18200 46200 15680016200 17900 47500 16150016200 17900 47500 16150015150 19000 48000 16045015150 19000 48000 160450

>> >> plotplot(revendedor,(revendedor,graficografico(:,1))(:,1))>> bar(>> bar(graficografico))

>> revendedor=[1 2 3];>> revendedor=[1 2 3];

Page 9: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

GrGrááficos para anficos para anáálise de dadoslise de dados>> >> plotplot(revendedor,(revendedor,graficografico(:,2))(:,2))

>> >> plotplot(revendedor,(revendedor,graficografico(:,3))(:,3))

>> >> plotplot(revendedor,(revendedor,graficografico(:,4))(:,4))

Page 10: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Janelas e FerramentasJanelas e Ferramentas Escolha de diretEscolha de diretóório;rio;UtilizaUtilizaçção de ferramenta de ão de ferramenta de busca para opbusca para opçção de ão de comando;comando;Leitura de imagem em Leitura de imagem em formato .JPGformato .JPGSalvar a variSalvar a variáável em arquivo vel em arquivo .m que consta em .m que consta em workspaceworkspace ..Amostragem para anAmostragem para anáálise lise da composida composiçção da imagem. ão da imagem.

Carregando variCarregando variáável salva para ser vel salva para ser usada em outro trabalhousada em outro trabalho

Page 11: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Comandos de alto nComandos de alto níívelvel

As linhas de programaAs linhas de programaçção ficam gravadas em ão ficam gravadas em arquivos arquivos MM--filefile ou arquivos de extensão .m ou arquivos de extensão .m

O comando figure O comando figure éé um um suporte sempre suporte sempre necessnecessáário quando rio quando desejadeseja--se amostrar se amostrar imagens. imagens. ÉÉ designado designado atravatravéés da interface s da interface programaprograma--usuusuááriorio

Page 12: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

OperaOperaçções com Vetoresões com VetoresCriaCriaççãoão>>t=[0 2 4 6 8 10 12 14 16 18 20]>>t=[0 2 4 6 8 10 12 14 16 18 20]OuOu>>t1= 0:2:20>>t1= 0:2:20>> h=1:3:32>> h=1:3:32

ManipulaManipulaççãoão>> h1=h+2>> h1=h+2>> v=t+h>> v=t+h>> t1=t*5>> t1=t*5>> b=t*h>> b=t*h‘‘>> b1=t.*h>> b1=t.*h>> b2=t/h>> b2=t/h

>> >> whowho

YourYour variablesvariables are:are:

h t h t

>> >> whoswhosNameName SizeSize Bytes Bytes ClassClass

h 1x11 88 h 1x11 88 doubledouble arrayarrayt 1x11 88 t 1x11 88 doubledouble arrayarray

GrandGrand total is 22 total is 22 elementselements usingusing 176 bytes176 bytes

Page 13: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

FunFunçções Matemões Matemááticasticas

17252

3

2

+−=

+xyyxt

233 4235 yxyyxxw −−−−+=

Para facilmente escrever linhas de expressão matemPara facilmente escrever linhas de expressão matemáática, tica, MatlabMatlabdisponibiliza bloco de cdisponibiliza bloco de cóódigos que realizam tarefas especdigos que realizam tarefas especííficas.ficas.

ContContéém funm funçções padrão como ões padrão como sinsin, , coscos, , tantan, , secsec, , expexp, , loglog, , sqrtsqrt,,sumsum, , meanmean. . Constantes geralmente usadas como Constantes geralmente usadas como pipi, e i ou j para a raiz quadrada de , e i ou j para a raiz quadrada de --1, 1, tambtambéém estm estáá incorporado em incorporado em MatlabMatlab. .

EncontraEncontra--se todas as funse todas as funçções matemões matemááticas elementares ticas elementares listadas atravlistadas atravéés do comando: >> s do comando: >> helphelp elfunelfun

wtwtwq 12

)13)(tan10sin( 43 +−+−=

3=x 4=y

Page 14: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

ImplementaImplementaçção de Funão de Funççõesões>> x=4; y=3;>> x=4; y=3;>> t=(2*x^2>> t=(2*x^2--5*y)/(5*y)/(sqrtsqrt(2*y^(3(2*y^(3--x)+17))x)+17))t =t =

4.04464.0446>> w=(5*x+3>> w=(5*x+3--x^3x^3--y^3)/(2*yy^3)/(2*y--xx--4*y^2)4*y^2)

w =w =

22>> q=(>> q=(sinsin(w)^3(w)^3--t^4/10+t^4/10+tantan(w))*((w))*(--sqrtsqrt(t*3+1))/12*w(t*3+1))/12*w

q =q =

17.028917.0289

Page 15: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

MatrizesMatrizes>> a = [1 2 3;4 5 6;7 8 9]>> a = [1 2 3;4 5 6;7 8 9]>> a1 = [1 2 3>> a1 = [1 2 3

4 5 64 5 67 8 9]7 8 9]

>> a2 = [1 2 3,4 5 6,7 8 9]>> a2 = [1 2 3,4 5 6,7 8 9]

>> b=[1 2>> b=[1 2 22;3 2 4; 5 2 1];;3 2 4; 5 2 1];>> d=[b,a]>> d=[b,a]

helphelp matfunmatfun

Livro de Livro de algebraalgebra linear exerclinear exercííciocio

O cO cáálculo de transpostas, lculo de transpostas, inversas, inversas, determinantes,diagonais, determinantes,diagonais, covariâncias resumecovariâncias resume--se a se a comandos como: comandos como:

>> >> invinv(x)(x)

>> b=>> b=randrand(6)(6)>> var(b)>> var(b)>> >> covcov(b)(b)Sendo a matriz de variância Sendo a matriz de variância

diagonal da matriz de diagonal da matriz de covânciacovância

Page 16: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

FunFunçções para Matrizesões para Matrizes>> >> onesones(3) matriz de uns(3) matriz de uns>> zeros(5) matriz de zeros>> zeros(5) matriz de zeros>> >> randrand(3) matriz com elementos aleat(3) matriz com elementos aleatóórios distriburios distribuíídos dos

uniformementeuniformemente>> >> randnrandn(4) matriz com elementos aleat(4) matriz com elementos aleatóórios distriburios distribuíídos normalmentedos normalmente>> >> eyeeye(3) matriz identidade(3) matriz identidade>> >> onesones(3,1,2) matriz de uns com especifica(3,1,2) matriz de uns com especificaçção da dimensãoão da dimensão>> a=>> a=onesones(2,5); b=zeros(2,5); c=(2,5); b=zeros(2,5); c=onesones(1,5)*3;(1,5)*3;vertcatvertcat(a,b,c) (a,b,c)

comando que concatena matrizes vercomando que concatena matrizes verticalmenteticalmente>> >> repmatrepmat(a,2,3)(a,2,3)>> m = >> m = sizesize((randrand(2,3,4),2) (2,3,4),2)

em que o ultimo algarismo respondeem que o ultimo algarismo responde sobre a dimensão dois, sobre a dimensão dois, a das colunas. Poderia ser 3, a das linhas. E 4, a das bandas.a das colunas. Poderia ser 3, a das linhas. E 4, a das bandas.

>>d=>>d=peakspeaks(25);(25);

Page 17: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

c =input('cotas das amostras ordenadas na c =input('cotas das amostras ordenadas na sequenciasequencia da malha:')da malha:')%[10.0000,10.2800,10.2000,10.3000,10.3100;10.3000,10.3200,10.280%[10.0000,10.2800,10.2000,10.3000,10.3100;10.3000,10.3200,10.2800,10.0,10.

3100,13100,1%0.4000;10.4800,10.5000,10.5500,10.4800,10.5500;10.5600,10.7000,%0.4000;10.4800,10.5000,10.5500,10.4800,10.5500;10.5600,10.7000,10.8010.80

00,10.00,10.%7500,10.7800];%7500,10.7800];a=a=sizesize(c,1);b=(c,1);b=sizesize(c,2);(c,2);N=a*b;N=a*b;HcHc=(=(sumsum((sumsum(c,1)))/N;(c,1)))/N;difdif==cc--HcHc;;inda=inda=findfind((difdif < 0);< 0);indcindc==findfind((difdif > 0);> 0);distdist=input('distancia entre pontos da malha:');=input('distancia entre pontos da malha:');areaarea==distdist^2;^2;volcortevolcorte= = sumsum((difdif((indcindc))*))*areaarea;;volaterrovolaterro==sumsum((difdif(inda))*(inda))*areaarea;;

SistematizaSistematizaçção de terreno pelo ão de terreno pelo ‘‘MMéétodo do Plano todo do Plano ÚÚniconico’’

ProgramaProgramaçção simplesão simples

Page 18: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Comandos Comandos forfor--ifif--elseelse--endend--switchswitch--casecase--otherwiseotherwise--whilewhile

>> for a=1:10>> for a=1:10a<=3; C(a)=a^2;a<=3; C(a)=a^2;a=3:7; C(a)=a+5;a=3:7; C(a)=a+5;a=7:10; C(a)=a;a=7:10; C(a)=a;endend

>> >> stemstem(C)(C)

A forma bA forma báásica do comando for sica do comando for éé::

for for ííndice = comendice = começça:incremento:paraa:incremento:paradeclaradeclaraççõesõesendend

>> for m=1:10>> for m=1:10x(m)=m^2;x(m)=m^2;endend;;>> x(3)>> x(3)

ansans ==

99

Page 19: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Estruturas Estruturas ifif--elseelse--endend

MatlabMatlab tem quatro tipos de afirmatem quatro tipos de afirmaçções ões são são ifif, , elseifelseif, , elseelse,,endendElas fazem o controle de fluxo baseadas Elas fazem o controle de fluxo baseadas no teste lno teste lóógico.gico.Em sua forma bEm sua forma báásica:sica:If testeIf testedeclaradeclaraççõesõesEndEnd

functionfunction retorno=retorno=posnegposneg((entent))ifif allall((entent>0)>0)

retorno=1;retorno=1;elseifelseif allall ((entent<0)<0)

retorno=retorno=--1;1;elseelse

retorno=0;retorno=0;endend

O teste O teste éé uma expressão em que huma expressão em que háá 1(verdadeiro) ou 0(falso) 1(verdadeiro) ou 0(falso) éé executado executado entre o entre o ifif e e endend e retorna se o teste der verdadeiro, quando falso são e retorna se o teste der verdadeiro, quando falso são ignoradas as declaraignoradas as declaraçções.ões.Testes adicionais podem ser feitos usando Testes adicionais podem ser feitos usando elseifelseif e e elseelse..

Page 20: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Estrutura Estrutura switchswitch, case, , case, otherwiseotherwise

switchswitch xxcase 1case 1dispdisp('x is 1');('x is 1');case {2,3,4}case {2,3,4}dispdisp('x is 2, 3 ('x is 2, 3 oror 4');4');case 5case 5dispdisp('x is 5');('x is 5');otherwiseotherwisedispdisp('x is ('x is notnot 1, 2, 3, 4 1, 2, 3, 4 oror 5');5');endend

>> x=5;>> x=5;Pressione o botão Pressione o botão runrun::>> x is 5>> x is 5

MM--filefile switchxswitchx.m.mA forma bA forma báásica de parâmetros do sica de parâmetros do switchswitch ee´́: :

switchswitch testetestecase resultado1case resultado1declaradeclaraççãoãocase resultado2case resultado2declaradeclaraççãoão......otherwiseotherwisedeclaradeclaraççãoãoendend

A expressão em A expressão em switchswitch case scase sóó pode pode ser um escalar ou uma string.ser um escalar ou uma string.

Page 21: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

WhileWhile

whilewhile testetestedeclaradeclaraççãoãoendend

n = 1;n = 1;whilewhile sumsum(1:n)<=1000(1:n)<=1000n = n+1;n = n+1;endend

As declaraAs declaraçções são executadas repetidamente enquanto o valor de ões são executadas repetidamente enquanto o valor de teste for igual a 1, por exemplo, achar o primeiro inteiro n pateste for igual a 1, por exemplo, achar o primeiro inteiro n para qual ra qual 1+2+1+2+·· ·· ··+n +n éé maior que 1000:maior que 1000:

Page 22: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

ÁÁrea de um Polrea de um Políígono com gono com WhileWhilemat=input('matriz de coordenadas x e y dos pontos da poligonal:')matr=vertcat(mat,mat(1,:));x=matr(:,1);y=matr(:,2);a=size(x,1);n=1;soma=0;while n<a;mult=x(n,1)*y(n+1,1);soma=soma+mult;n=n+1;endm=1;soma2=0;while m<a;mult2=x(m+1,1)*y(m,1);soma2=soma2+mult2;m=m+1;endarea=abs((soma-soma2)/2)

Page 23: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Plotagem de GrPlotagem de GrááficosficosO comando O comando axisaxis ajusta a escala do grajusta a escala do grááfico fico ààs coordenadas dos pontos s coordenadas dos pontos plotadosplotados..Sintaxe: Sintaxe: axisaxis([([xminxmin xmaxxmax yminymin ymaxymax]) ]) >> x1=>> x1=--1;y1=1;y1=--1;x2=1;y2=1;x2=1;y2=--1;x3=1;x3=--1;y3=1;x4=1;y4=1;1;y3=1;x4=1;y4=1;>> >> plotplot(x1,y1,'o',x2,y2,'o',x3,y3,'o',x4,y4,'o')(x1,y1,'o',x2,y2,'o',x3,y3,'o',x4,y4,'o')>> >> axisaxis([([--22 22 --22 22])])>> >> axisaxis squaresquare %forma quadrada >> %forma quadrada >> axisaxis normal ounormal ou>> x=[>> x=[--11 11 --11 11] ; y=[] ; y=[--1; 1; --1; 1; 1] ; 1; 1; 1] ; plotplot(x,y,'.r');(x,y,'.r');axisaxis([([--22 22 --22 22])])

subplotsubplot trabalha com multiplicidade de trabalha com multiplicidade de grgrááficos ficos

renda= [3.2 4.1 5.0 5.6];renda= [3.2 4.1 5.0 5.6];gastos= [2.5 4.0 3.35 4.9];gastos= [2.5 4.0 3.35 4.9];subplotsubplot(2,1,1); (2,1,1); plotplot(renda)(renda)subplotsubplot(2,1,2); (2,1,2); plotplot(gastos)(gastos)

Page 24: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Comando Comando subplotsubplot>> t = 0:.1:2*pi;subplot(2,2,1)plot(cos(t),sin(t))subplot(2,2,2)plot(cos(t),sin(2*t))subplot(2,2,3)plot(cos(t),sin(3*t))subplot(2,2,4)plot(cos(t),sin(4*t))

subplot 221plot(1:10)subplot 222plot(0,’*’)subplot 212plot([1 0 1 0])

Sendo o primeiro Sendo o primeiro ííndice o nndice o núúmero de eixos na mero de eixos na vertical, o segundo nvertical, o segundo núúmero de eixos na mero de eixos na horizontal e o horizontal e o úúltimo o nltimo o núúmero de ordem ou mero de ordem ou posiposiçção. ão.

Page 25: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Propriedades de GrPropriedades de Grááficos ficos Para colocar rPara colocar róótulos em grtulos em grááficos podeficos pode--se usar a funse usar a funçção ão xlabelxlabel, , ylabelylabel, , andand titletitle>> >> xlabelxlabel((‘‘eixo x'); eixo x'); ylabelylabel((‘‘eixo y'); eixo y'); titletitle((‘‘pontos no plano')pontos no plano')Inserir texto em ponto de sua escolha no grInserir texto em ponto de sua escolha no grááfico fico >>>>gtextgtext('P1');('P1');gtextgtext('P2');('P2');gtextgtext('P3');('P3');gtextgtext('P4')('P4')

PodePode--se especificar o estilo de linha, o sse especificar o estilo de linha, o síímbolo que marca o ponto e mbolo que marca o ponto e cor do grcor do grááfico ainda pelo fico ainda pelo promptprompt..>> x=[4 5 6; 1 2 3]; y=(x.^2)>> x=[4 5 6; 1 2 3]; y=(x.^2)>> >> plotplot(x,y,'(x,y,'--..oror')')>> >> plotplot(x,y,'(x,y,'--hkhk')')

Em Em helphelp plotplot visualizavisualiza--se as especificase as especificaçções ões das caracterdas caracteríísticas do grsticas do grááficofico

>> t = 0:.1:2*pi;plot(t,sin(t),t,sin(1.05*t))>> gtext('frequency = 1');gtext('frequency = 1.05');axis([0 max(t) -1 1])

Page 26: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Propriedades de GrPropriedades de Grááficosficos

>> dt = 2*pi/10;t = dt:dt:10*dt;x = cos(t);y = sin(t);plot(x,y)axis equal offfor i = 1:10text(x(i),y(i),int2str(i))end

>> t = 0:.1:2*pi;plot(t,sin(t),t,sin(1.05*t))>> gtext('frequency = 1');gtext('frequency = 1.05');axis([0 max(t) -1 1])

Page 27: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Comando plot3Comando plot3MatlabMatlab apresenta um grapresenta um grááfico fico tridimensional com plot3:tridimensional com plot3:>> x1=3; y1=4; z1=5;>> x1=3; y1=4; z1=5;>> plot3(x1,y1,z1,'*')>> plot3(x1,y1,z1,'*')

>> th=[0:.01:2]*2*pi;x=cos(th);y=sin(th);z=th;plot3(x,y,z)

Page 28: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

RepresentaRepresentaçções em coordenadas polaresões em coordenadas polares

>> th=0:2*pi/100:2*pi;rho=3*th;polar(th,rho)

Page 29: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Arquivos, extensões e rotinasArquivos, extensões e rotinas

clear, clf>>x1=1;y1=.5;x2=2;y2=1.5;x3=3;y3=2;>>plot(x1,y1,'o',x2,y2,'+',x3,y3,'*')>>axis([0 4 0 4])>>xlabel('xaxis')>>ylabel('yaxis')>>title('3points in a plane')

As rotinas para automaAs rotinas para automaçção de atividades tambão de atividades tambéém são gravados em m são gravados em arquivos de extensão .m e carregados sempre que necessarquivos de extensão .m e carregados sempre que necessáário; rio; File>New>File>New>MM--FileFile Copiar as linhas de programaCopiar as linhas de programaçção com sintaxe correta e ão com sintaxe correta e salvar;salvar;File>Open>(escolha) Desde que o arquivo esteja no diretFile>Open>(escolha) Desde que o arquivo esteja no diretóório corrente;rio corrente;Botão para compilaBotão para compilaçção ou ão ou promptprompt digitando o nome do arquivo. digitando o nome do arquivo. As variAs variááveis de trabalho podem ser armazenadas em arquivos de veis de trabalho podem ser armazenadas em arquivos de extensão .extensão .matmat atravatravéés do menu File> s do menu File> SaveSave WorkspaceWorkspace As... E carregadas As... E carregadas da mesma maneira que um da mesma maneira que um M_FileM_File..

Page 30: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

CriaCriaçção de uma nova funão de uma nova funççãoãoÉÉ necessnecessáário criar um arquivo .m denominado da mesma forma rio criar um arquivo .m denominado da mesma forma que a funque a funçção;ão;Em sua primeira linha escreveEm sua primeira linha escreve--se o comando se o comando functionfunction e segue a e segue a descridescriçção dos parâmetros da nova funão dos parâmetros da nova funçção.ão.

Para a amostragem geomPara a amostragem geoméétrica da funtrica da funçção em seu domão em seu domíínio usanio usa--se o se o comando comando fplotfplot delimitando os intervalosdelimitando os intervalos

>> fplot ('andre',[-2,7])

Page 31: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

GrGrááficos tridimensionaisficos tridimensionais

>> [x,y] = meshgrid(-10:10);z = sqrt(x.^2 + y.^2);>> mesh(x,y,z)

Page 32: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Tipos de representaTipos de representaççõesões

z = 3*(1-x).^2.*exp(-(x.^2) - (y+1).^2) ...- 10*(x/5 - x.^3 - y.^5).*exp(-x.^2-y.^2) ...- 1/3*exp(-(x+1).^2 - y.^2);

[x,y,z] = peaks;colormap(gray)

plot(z) mesh(x,y,z)

Page 33: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

>> surf(x,y,z)>> shading flat

>> surfl(x,y,z)>> shading flat

>> contour(x,y,z) >> imagesc(z)>> axis xy

Outros tipos de representaOutros tipos de representaççõesões

Page 34: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

>> contourf(x,y,z)

>> surfc(x,y,z)

Outros tipos de representaOutros tipos de representaççõesões

Page 35: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

Mapa de CoresMapa de CoresPodePode--se usar se usar ‘‘colormapcolormap’’ predefinido ou criar seu prpredefinido ou criar seu próóprio prio colormapcolormap;;MatlabMatlab usa matrizes para aplicar cores em mapas, imagens e usa matrizes para aplicar cores em mapas, imagens e superfsuperfíícies.cies.

hsv hot gray bone copper pinkwhite flag lines colorcube jetprism cool autumn spring wintersummer

>> colormap (‘hot’)>> colormap ([.5 .5 .5])

ColormapColormap especificadoespecificado

ParchmentParchment.8.8.9.9.95.95

AquamarineAquamarine.83.8311.49.49

DarkDark orangeorange.4.4.62.6211

DarkDark redred0000.5.5

GrayGray.5.5.5.5.5.5

CyanCyan111100

MagentaMagenta110011

YellowYellow001111

BlueBlue110000

GreenGreen001100

RedRed000011

WhiteWhite111111

BlackBlack000000

ColourColourBlueBlueGreenGreenRedRed

>> gray(8)

ColormapColormap predefinidopredefinido

Page 36: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

HDF or HDF-EOS data set HDFREAD HDF - Hierarchical Data Format

Primary or extension table dataFITSREADFITS - Flexible Image Transport System

Cell array of CDF recordsCDFREAD CDF - Common Data Format

ReturnsCommandScientific Data Formats

Double array and cell arrayWK1READWK1 - Lotus 123 worksheet

Double array and cell arrayXLSREAD XLS - Excel worksheet

ReturnsCommandSpreadsheet Formats

Double arrayDLMREADTAB - Tab separated text

Double arrayDLMREADDLM - Delimited text

Double arrayIMPORTDATADAT - Formatted text

Double arrayTEXTREADTXT – Formatted data in a text file

Double arrayCSVREADCSV - Comma separated numbers

Variables in fileLOADMAT - MATLAB workspace

ReturnsCommandData Formats

Formatos suportados para arquivos de dadosFormatos suportados para arquivos de dados

Page 37: introdu..o ao uso do programa computacional matlab - UFRRJufrrj.br/institutos/it/deng/varella/curso basico matlab.pdf · zPlotagem de gráficos zRepresentações em coordenadas ...

MATLAB movieAVIREAD AVI - MovieReturnsCommandMovie Formats

Sound data and sample rateWAVREAD WAV – Microsoft Wave SoundSound data and sample rateAUREADSND – Next/Sun SoundSound data and sample rateAUREAD AU – Next/Sun SoundReturnsCommandAudio Formats

Truecolor or indexed imageIMREAD BMP – Windows bitmapTruecolor or indexed image(s)IMREAD HDF – Hierarchial data format

Truecolor, grayscale or indexedimage

IMREAD PNG – Portable network graphics

Truecolor, grayscale or indexedimage(s)

IMREAD TIFF – Tagged image formatReturnsCommandImage Formats

Formatos suportados para arquivos de imagem, Formatos suportados para arquivos de imagem, ááudio e filmeudio e filme