clase 7 GRAFICOS 2D.pdf

NandoMartiHufer 59 views 95 slides Jun 02, 2023
Slide 1
Slide 1 of 95
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59
Slide 60
60
Slide 61
61
Slide 62
62
Slide 63
63
Slide 64
64
Slide 65
65
Slide 66
66
Slide 67
67
Slide 68
68
Slide 69
69
Slide 70
70
Slide 71
71
Slide 72
72
Slide 73
73
Slide 74
74
Slide 75
75
Slide 76
76
Slide 77
77
Slide 78
78
Slide 79
79
Slide 80
80
Slide 81
81
Slide 82
82
Slide 83
83
Slide 84
84
Slide 85
85
Slide 86
86
Slide 87
87
Slide 88
88
Slide 89
89
Slide 90
90
Slide 91
91
Slide 92
92
Slide 93
93
Slide 94
94
Slide 95
95

About This Presentation

Graficos en 2d con Matlab


Slide Content

GRÁFICOSENMATLAB
UNIVERSIDAD PERUANA DEL CENTRO
FACULTADDEINGENIERIA
ESCUELA PROFESIONAL DE INGENIERIA CIIVIL
MSc. Hugo F. CAÑARI MARTICORENA

GRAFICOS EN 2D
Lastablasdedatosmuygrandessondifícilesdeinterpretar.Losingenierosusan
técnicasdegraficaciónparahacerquelainformaciónseentiendanfácilmente.
Conunagráficaesfácilidentificartendencias,elegiraltosybajosyaislar
puntosdedatosquepuedensermedicionesocálculosdeerrores.Lasgráficas
tambiénsepuedenusarcomounarápidaverificaciónparadeterminarsiuna
solucióndecomputadoraproducelosresultadosesperados.
Conlossiguientescomandosqueveremosacontinuaciónpodremosgraficar
datosenMatlab.
Unavezdefinidoslosvectoresdevaloresxyvaloresy,MATLABhacefácilla
creacióndegráficas.Primerovamosacrearlosdatosx-y.Supongamosque
estosdatosfueronobtenidosenlamedicióndeunafunciónconrelaciónal
tiempo.

X=0:0.1:10;%Datoseny(seráeltiempo)
Y=2*sin(X);%FunciónSenodependientedel
tiempo
ParaGraficarusamoslafunciónplot(X,Y),para
colocartítulosusamostitle,paracolocar
etiquetasenxyyusamosxlabel()yylabel()
respectivamente,paracolocarrejillausamosel
gridyparacolocarunalegendausamos
legend().

VamosagraficarunafunciónenMatlab,en
estecasoestamoshablandodelafuncion
Seno.
plot(X,Y)
title('FunciónSeno')%Colocauntítuloal
grafico
xlabel('tiempo(s)')%Colocatituloalejex
ylabel('X=2*sin(Y)')%Colocatituloalejey
gridon%Colocaunagrillaalgrafico

COMO GRAFICAR VARIAS FUNCIONES EN
MATLAB
AlmomentodehacerunagráficaenMATLAByluego
hacermáscálculosyhacerunasegundagráfica,
MATLABvaasobrescribirlaprimeragráfica.Sino
deseamosesto,debemosusarelcomandohold.Dicho
comandonospermitesuperponergraficasenMATLAB.
Continuandoentoncesconlagraficadelsenoanterior,
vamosaaprendercomograficarvariasfuncionesen
matlab,paraesoprocedemosagraficarelcosenosobre
lamismafiguraparaverambasfunciones.

Z=cos(4*X); %Crea función Coseno y lo guarda en Z
hold%Mantiene las dos funciones en la misma figura
plot(X,Z) %Grafica el Coseno
legend('Seno','Coseno'); %Crea una L

Tambienpodemoshacerestasgraficasenunasola
líneausandoelcomandoplotyseparandocada
funciónporcomas.
plot(X,Y,X,Z)%Graficaelsenoyelcoseno
opodemossepararcadafunciónendosfiguras
diferentesanteponiendoelcomandofigure(x)
figure(1)%Figura1
plot(X,Y)%FunciónSeno
figure(2)%Figura2
plot(X,Z)%FunciónCoseno

VARIAS VENTANAS DE GRAFICAS
EN MATLAB
Podemoshacerlasdosgraficasseparadasenunamismafiguraconel
comandosubplot.Estecomandomepermitecrear2graficasenuna
ventanaenMATLABotambiéncrearmultiplesgraficosenMATLAB.
elcomandosehacesubplot(m,n,p);rompelaventanadelaFiguraen
unamatrizm-ndeejespequeños,seleccionaelejep-thparalagráfica
actual.
figure
subplot(2,1,1)%Divideunafiguraen2filasy1columna
plot(X,Y)%Graficasenoeneleje1
subplot(2,1,2)%Divideunafiguraen2filasy1columna
plot(X,Z)%Graficacosenoeneleje2

DECORAR GRÁFICAS EN MATLAB
Puedecambiarlaaparienciadesusgráficasal
seleccionarestiloycolordelíneadefinidosporel
usuarioyalelegirmostrarlospuntosdedatosen
lagráficaconestilosdemarcadefinidosporel
usuario.Acontinuaciónhayunatablaconun
resumendelosparametrosconloscualesse
puededecorargraficasocambiaratributosen
MATLAB.

%EJEMPLO 1
PLOT(X,Y,'-C',X,Z,'--K')
%EJEMPLO 2
PLOT(X,Y,':M’,X,Z,’*G’)

Podemoscambiartambiéneltamañodelaslíneascon
LinewidthyeltamañodelasfuentesconFontSize,Para
cambiarlafuentedelosAxesusarelcomandogca.
plot(X,Y,'-c',X,Z,'--k','Linewidth',3)
title('FunciónSeno','FontSize',15)%Colocauntítuloal
grafico
xlabel('tiempo(s)','FontSize',10)%Colocatituloalejex
ylabel('X=2*sin(Y);Z=cos(4*X)','FontSize',18)%Coloca
tituloalejey
set(gca,'FontSize',(14))%TamañodelAxe

AJUSTAR EJES EN MATLAB
MATLAB seleccionaautomáticamente
escalamientosadecuadosenlosejesxyy.A
vecesesútilparaelusuariotenerla
capacidaddecontrolarelescalamiento.El
controlselograconlafunciónaxis.
axis([XMIN XMAX YMIN YMAX])
plot(X,Y,'-c',X,Z,'--k' ,'Linewidth',3)
axis([2,8,-1,1]);

ANOTACIONES EN GRÁFICOS EN
MATLAB
Tambiénesposiblehaceranotacionesenlas
graficasdeMATLAB.text(X,Y,’Anotación’)
Puedeusarletrasgriegasensusetiquetasal
ponerunadiagonalinversa(\)antesdel
nombredelaletra.Porejemplo\alpha,\beta,
\gamma,\rho,etc
plot(X,Y,'-c',X,Z,'--k','Linewidth',3)
text(3,1.5,'funcionesenfrecuencia')
title('FunciónX=sin(\alpha)')

PARÁMETROS DEL PLOT
Elcomandoplotofreceopciones
adicionalesparacontrolarlaforma
enqueaparecelagráfica.Usela
funciónhelpparaaprendermás
acercadecómocontrolarla
aparienciadelagráfica.

EJERCICIOS
1.-
>>x=[130-3];y=[1246];
>>plot(x,y)
2.-Representargráficamentelassiguientes
funcionesenventanasdiferentes,
f(x)=sen(x),g(x)=x2+3xenelintervalo
[0,2π].
>> x=linspace(0,2*pi,100);
>> y=sin(x); z=x.^2+3*x;
>> plot(x,y)
>> plot(x,z)
2.1.
x=linspace(0,10,100);
>>y=sin(x);
>>plot(x,y)

REPRESENTAR LAGRÁFICA DELAFUNCIÓN F(X)=XSen(X)ENEL
INTERVALO [0,2Π],CONREJILLA.
>> x=linspace(0,2*pi,100);
>> y=x.*sin(x);
>> plot(x,y)
>> grid

REPRESENTARF(X)=sen(X)cos(X)EN[0,2Π],CONETIQUETASENLOSEJES,
TÍTULOYENCOLORROJO.
>> x=linspace(0,2*pi,100);
>> y=sin(x).*cos(x);
>> plot(x,y,'r')
>> xlabel('ejex')
>> ylabel('ejey')
>> title('funcionsen(x)cos(x)')

REPRESENTAR EN[0,6] Y ENLA GRÁFICALAS FUNCIONES:
A. F(X)=3XEX ENAZUL.
B. G(X)=SEN(X+3) ENROJOY CON TRAZODISCONTINUO Y
PONERLEYENDAS.
>> x=linspace(0,6,100);
>> y=3*x.*exp(x);
>> z=sin(x+3);
>> plot(x,y)
>> hold on
>> plot(x,z,'r--')
>> hold off
>> legend('primerafuncion', 'segundafuncion')
x = 0:pi/100:2*pi; y = sin(x);
plot(x,y)

REPRESENTARENLAMISMAGRÁFICAPEROENDISTINTASVENTANASLAS
SIGUIENTESFUNCIONES:X,X2,X3,X4,X5,X6.LASPARESENCOLOR
ROJOYCONREJILLA,LASIMPARESENAZULYSINREJILLA.
>> x=-1:0.1:1;
>> y1=x; y2=x.^2; y3=x.^3; y4=x.^4; y5=x.^5; y6=x.^6;
>> subplot(3,2,1), plot(x,y1)
>> subplot(3,2,2), plot(x,y2,'r'), grid
>> subplot(3,2,3), plot(x,y3)
>> subplot(3,2,4), plot(x,y4,'r'), grid
>> subplot(3,2,5), plot(x,y5)
>> subplot(3,2,6), plot(x,y6,'r'), grid

>> x = linspace(-2*pi,2*pi);
y1 = sin(x);
y2 = cos(x);
>> plot(x,y1,x,y2)
>>
>> y = magic(4)
>> plot(y)

>> x = 0:pi/100:2*pi;
y1 = sin(x);
y2 = sin(x-0.25);
y3 = sin(x-0.5);
>> plot(x,y1,x,y2,'--',x,y3,':')
>>

>> x = 0:pi/10:2*pi;
y1 = sin(x);
y2 = sin(x-0.25);
y3 = sin(x-0.5);
>> plot(x,y1,'g',x,y2,'b--o',x,y3,'c*')
>>
>> x = linspace(0,10);
y = sin(x);
plot(x,y,'-o','MarkerIndices',1:5:length(y))
>>

>> x = -pi:pi/10:pi;
y = tan(sin(x)) -sin(tan(x));
>> plot(x,y,'--gs',...
'LineWidth',2,...
'MarkerSize',10,...
'MarkerEdgeColor','b',...
'MarkerFaceColor',[0.5,0.5,0.5])

>> x = linspace(0,10,150);
y = cos(5*x);
>> plot(x,y,'Color',[0,0.7,0.9])
title('2-D Line Plot')
xlabel('x')
ylabel('cos(5x)')
>>
>> t = 0:seconds(30):minutes(3);
y = rand(1,7);
plot(t,y,'DurationTickFormat','mm:ss')
>>

>> x = linspace(-2*pi,2*pi);
y1 = sin(x);
y2 = cos(x);
p = plot(x,y1,x,y2);
>> p(1).LineWidth= 2;
p(2).Marker= '*';
>>

>> r = 2;
xc = 4;
yc= 3;
theta = linspace(0,2*pi);
x = r*cos(theta) + xc;
y = r*sin(theta) + yc;
plot(x,y)
axis equal
>>

GRACIAS

EJEMPLOS VARIOS
x = 0:pi/100:2*pi;
y = sin(x);
PLOT(x,y)

x = linspace(-2*pi,2*pi);
y1 = sin(x);
y2 = cos(x);
figure
plot(x,y1,x,y2)

Y = magic(4)
Y = 4×4
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
figure
plot(Y)

x = 0:pi/100:2*pi;
y1 = sin(x);
y2 = sin(x-0.25);
y3 = sin(x-0.5);
figure
plot(x,y1,x,y2,'--',x,y3,':')

x = 0:pi/10:2*pi;
y1 = sin(x);
y2 = sin(x-0.25);
y3 = sin(x-0.5);
Figure
plot(x,y1,'g',x,y2,'b--o',x,y3,'c*')

x = linspace(0,10);
y = sin(x);
plot(x,y,'-o','MarkerIndices',1:5:length(y))

x = -pi:pi/10:pi;
y = tan(sin(x)) -sin(tan(x));
figure
plot(x,y,'--gs','LineWidth',2,'MarkerSize',10,…
'MarkerEdgeColor','b',...'MarkerFaceColor',[0.5,0.5,0.5])

x = linspace(0,10,150);
y = cos(5*x);
figure
plot(x,y,'Color',[0,0.7,0.9])
title('2-D Line Plot’)
xlabel('x’)
ylabel('cos(5x)')

t = 0:seconds(30):minutes(3);
y = rand(1,7); plot(t,y,'DurationTickFormat','mm:ss')

x = linspace(0,3);
y1 = sin(5*x);
y2 = sin(15*x);
tiledlayout(2,1)
% Top plot
ax1 = nexttile;
plot(ax1,x,y1)
title(ax1,'Top Plot’)
ylabel(ax1,'sin(5x)’)
% Bottom plot
ax2 = nexttile; plot(ax2,x,y2)
title(ax2,'Bottom Plot’)
ylabel(ax2,'sin(15x)')

x = linspace(-2*pi,2*pi);
y1 = sin(x);
y2 = cos(x);
p = plot(x,y1,x,y2);

p(1).LineWidth= 2;
p(2).Marker= '*';

r = 2;
xc= 4;
yc= 3;
theta = linspace(0,2*pi);
x = r*cos(theta) + xc;
y = r*sin(theta) + yc;
plot(x,y) axis equal

X=0:0.1:10; %Datos en y (será el tiempo)
Y=2*sin(X); %Función Seno dependiente del tiempo
plot(X,Y)
title('Función Seno')%Coloca un título al grafico
xlabel('tiempo(s)')% Coloca titulo al eje x
ylabel('X=2*sin(Y)')% Coloca titulo al eje y
gridon% Coloca una grilla al grafico
Z=cos(4*X); %Crea función Coseno y lo guarda en Z
hold%Mantiene las dos funciones en la misma figura
plot(X,Z)%Grafica el Coseno
legend('Seno','Coseno'); %Crea una L

Ejemplo 1
plot(X,Y,'-c',X,Z,'--k')
%Ejemplo 2
plot(X,Y,':m',X,

plot(X,Y,'-c',X,Z,'--k','Linewidth',3)
title('Función Seno','FontSize',15)%Coloca un título al grafico
xlabel('tiempo(s)','FontSize',10)% Coloca titulo al eje x
ylabel('X=2*sin(Y); Z=cos(4*X)','FontSize',18)% Coloca titulo al eje y
set(gca,'FontSize',(14))% Tamaño del Axe

plot(X,Y,'-c',X,Z,'--k','Linewidth',3)
axis([2,8,-1,1]);

plot(X,Y,'-c',X,Z,'--k','Linewidth',3)
text(3,1.5,'funciones en frecuencia')
title('Función X=sin(\alpha)')

>>x = [-2 -1 0 1 2 3];
>>y = [4 1 0 1 4 9];
>> plot(x,y)
>> x = [-2 -1 0 1 2 3];
>>y = [4 1 0 1 4 9];
>>z = [6 5 3 7 5 2];
>> plot (x,y,x,z)
......
>> plot(x,y,'*’)
>> x = [-2 0 2 0 -2]; y = [4 8 4 0 4];
>> plot(x,y)
>> x = [-2 0 2 0 -2];
>>y = [4 8 4 0 4];
>> fill(x,y,'r') % dibuja el polígono, 'r' indica
el color rojo
>> x=[3 3 7 7];
>> y=[5 6.5 6.5 5];
>> fill(x,y,'r’)
>> axis([0 10 4 7.5])
>> x=[3 3 7 7];
>> y=[5 6.5 5 6.5];
>> fill(x,y,'r’)
>> axis([0 10 4 7.5])

>> x = 1:360; y1 = sind(x); y2 = cosd(x); y3 = exp(x); y4 = exp(-x);
>> subplot (2,2,1), plot (x,y1), title ('seno')
>> subplot (2,2,2), plot (x,y2), title ('coseno')
>> subplot (2,2,3), plot (x,y3), title ('exponencial')
>> subplot (2,2,4), plot (x,y4), title ('-exponencial')

GRÁFICOS: 2D
Funcionesgráficas2Delementales:
MATLABdisponede4funcionesbásicasparacreargráficos2-D.Estassediferencian
principalmenteporeltipodeescalaqueutilizanenlosejesEstascuatrofuncionesson
lassiguientes:
•plot()creaungráficoapartirdevectoresy/ocolumnasdematrices,conescalas
linealessobreambosejes.
•loglog()ídemconescalalogarítmicaenambosejes.
•semilogx()ídemconescalalinealenelejedeordenadasylogarítmicaenelejede
abscisas.
•semilogy()ídemconescalalinealenelejedeabscisasylogarítmicaenelejede
ordenadas.

GRÁFICOS: 2D______________________________
Existenfuncionesorientadasaañadirtítulosalgráfico,alosejes,adibujaruna
cuadrículaauxiliar,aintroducirtexto,etc.
•title('título')añadeuntítuloaldibujo
•xlabel('tal')añadeunaetiquetaalejedeabscisas.
•Conxlabeloffdesaparece
•ylabel('cual')idemalejedeordenadas.
•Conylabeloffdesaparece
•text(x,y,'texto')introduce'texto'enellugarespecificadoporlascoordenadasxey.Si
xeysonvectores,eltextoserepiteporcadapardeelementos.
•gtext('texto')introducetextoconayudadelratón:
•legend()definerótulosparalasdistintaslíneasoejesutilizadosenlafigura.
•gridactivaunacuadrículaeneldibujo.
•Congridoffdesaparecelacuadrícula

GRÁFICOS: 2D ______________________________
ploteslafunciónclavedetodoslosgráficos2-DenMATLAB.Yasehadichoqueel
elemento
básicodelosgráficosbidimensionaleseselvector.Seutilizantambiéncadenasde
1,2ó3
caracteresparaindicarcoloresytiposdelínea.Lafunciónplot(),nohaceotracosa
quedibujarvectores.Ejemplo1:
»x=[132453]
x=
132453
»plot(x)
Figura 5.1. Gráfico del vector x=[1 3 2 4 5 3].

GRÁFICOS: 2D ______________________________
FUNCIÓN PLOT
Ejemplo2
x=0:pi/90:2*pi;
y=sin(x).*cos(x);
plot(x,y)
grid on
grid off
xlabel(‘ejex (enradianes)’)
ylabel(‘ejey’)
title(‘y=sen(x)*cos(x)’)

GRÁFICOS: 2D ______________________________
FUNCIÓNPLOT
Esposibleincluireneltítulooenlaetiquetadelosejeselvalordeunavariable
numérica.Yaqueelargumentodeloscomandostitle,xlabeleylabelesunavariable
carácter,esprecisotransformarlasvariablesnuméricas
int2str(n)convierteelvalordelavariableenteranencarácter
num2str(x)convierteelvalordelavariablerealocomplejaxencarácter

GRÁFICOS: 2D ______________________________
Textosobrelagráfica
gtext(’texto’)
text(x,y,’textoaimprimir’)
Calcularlascoordenadasdepuntossobrelacurva
ginput(n)
[x,y]=ginput(n)
Eleccióndeltrazoycolordelacurva
plot(x,y,’opcion’)
holdon
holdoff

y yellow . point -solid
m magenta o circle : dotted
c cyan x x-mark -. dashdot
r red + plus --dashed
g green * star
b blue s square
w white d diamond
k black v triangle (down)
^ triangle (up)
< triangle (left)
> triangle (right)
p pentagram
h hexagram
Opciones de plot

Ejemplo3:Calculargráficamentelassolucionesdelaecuación
teta=0:pi/360:pi/4;
f1=(2*teta-cos(2*teta))/2;
f2=0.4*ones(size(f1));
figure
plot(teta,f1,'g--',teta,f2,'r')
axissquare
xlabel('Angulo(radianes)')
gtext('2x-cos(2x))/2')
text(0.2,0.43,'y=0.4')
[teta0,y0]=ginput(1)
title(['Raizaproximada=',num2str(teta0)])4.0
2
)2cos(2
=
− xx

Eleccióndelaescaladelosejes
axis([x0x1y0y1])
axisauto:devuelvelaescalaaladedefecto
axisoff:desactivalosetiquetadosdelosejesdesapareciendolosejessus
etiquetasylagrid.
axison:loactivadenuevo
axisxy:sistemadecoordenascartesianasorigenenelánguloinferiorizquierdo,
ejeoxdeizqda.Adcha.yoydeabajoaarriba.
axisequal:losmismosfactoresdeescalaparalosdosejes
axissquare:cierraconuncuadradolaregióndelimitadaporlosejesde
coordenadasactuales.

Impresióndegráficas
print-dps%PostScriptforblackandwhiteprinters
-dpsc%PostScriptforcolorprinters
-deps%EncapsulatedPostScript
-depsc%EncapsulatedColorPostScript
print-djpeg<nn>%JPEGimagen,nnniveldecalidadEjemplo.print-
djpeg90figura1(nn75pordefecto)

Ejemplo4:plot(vector,Matriz)
x=0:pi/180:2*pi;
y=sin(x);
z=cos(x);
plot(x,y,x,z)
A=[y'z']
plot(x,A)
Funciónevalseutilizaconfuncionesdefinidasconuncarácter.y=eval(’caracter’)
Ejemplo5:
f=‘sin(x)-2*cos(x)’;
x=0:pi/90:2*pi;
y=eval(f);
plot(x,y)
axis([0602.4]);gtext(‘sen(x)-2cos(x)’)

Funciónfplotseutilizaconfuncionesdefinidasconuncarácter.fplot=(f,[02*pi
yminymax])
Ejemplo6:
f=‘sin(x)-2*cos(x)’;
fplot(f,[02*pi],’g—’)
Estafunciónpuedeutilizarsetambiénenlaforma:
[x,y]=fplot(f,[02*piyminymax])
yenestecasosedevuelvenlosvectoresxey,peronosedibujanada.
Llamarunanuevafigurafigureoreferirnosaunafigurayaechafigure(n)
Borrarlafiguraactualclf
closeallborratodaslasfigurasclose(figure(n))lan

FUNCIÓNSUBPLOT
Unaventanagráficasepuededividirenmparticioneshorizontalesynverticales,
conobjetoderepresentarmúltiplesgráficosenella.Cadaunadeestas
subventanastienesuspropiosejes,aunqueotraspropiedadessoncomunesatoda
lafigura.Laformageneraldeestecomandoes:
subplot(m,n,i)dondemynsonelnúmerodesubdivisionesenfilasycolumnas,ei
eslasubdivisiónqueseconvierteenactiva.Lassubdivionessenumeran
consecutivamenteempezandoporlasdelaprimerafila,siguiendoporlasdela
segunda,etc.

Ejemplo7:
subplot(121)
f=‘sin(x)-2*cos(2*x)’;
fplot(f,[02*pi])
legend(‘sen(x)-2cos(2x)’)
subplot(122)
fplot(‘sin’,[04*pi],’r’)
legend(‘sen(x)’)

Otrasfuncionesgráficas2-D
•bar()creadiagramasdebarras.
•barh()diagramasdebarrashorizontales.
•bar3()diagramasdebarrasconaspecto3-D.
•bar3h()diagramasdebarrashorizontalesconaspecto3-D.
•pie()gráficosconformade“tarta”.
•pie3()gráficosconformade“tarta”yaspecto3-D.
•area()similarplot(),perorellenandoenordenadasde0ay.
•stairs()funciónanálogaabar()sinlíneasinternas.
•errorbar()representasobreunagráfica–mediantebarras–valoresdeerrores.
•compass()dibujaloselementosdeunvectorcomplejocomounconjuntodevectores
partiendodeunorigencomún.
•feather()dibujaloselementosdeunvectorcomplejocomounconjuntodevectores
partiendodeorígenesuniformementeespaciadossobreelejedeabscisas.
•hist()dibujahistogramasdeunvector.

Representacióndepolígonos
funciónespecialparadibujarpolígonosplanos,rellenándolosdeundeterminado
color.
Laformageneraleslasiguiente:
»fill(x,y,c)
·Sicesuncarácterdecolor('r','g','b','c','m','y','w','k'),ounvectordevalores[rgb],
elpolígonoserellenademodouniformeconelcolorespecificado.
·Sicesunvectordelamismadimensiónquexey,suselementossetrasformande
acuerdoconunmapadecoloresdeterminado,yelllenadodelpolígono–no
uniformeenestecaso–seobtieneinterpolandoentreloscoloresdelosvértices.Este
comandoconmatrices:

»fill(A,B,C)
dondeAyBsonmatricesdelmismotamaño.Enestecasosedibujaunpolígonopor
cadapardecolumnasdedichasmatrices.Cpuedeserunvectorfiladecolores
uniformesparacadapolígono,ounamatrizdelmismotamañoquelasanteriores
paraobtenercoloresderellenoporinterpolación.
Ejemplo8:
x=[1,2,1,0];
y=[0,1,2,1];
figure
fill(x,y,’r’)
title(‘rombo’)

GRÁFICOS: 2D Y 3D______________________________
Funcionesgráficas3Delementales:
Lafunciónplot3esanálogaasuhomólogabidimensionalplot.Suformamássencilla
esla
siguiente:
»plot3(x,y,z)
Ejemplo9:
teta=0:pi/80:8*pi;
x=1+2*cos(teta);
y=1+2*sin(teta);
z=4*teta;
plot3(x,y,z)
axis([-13-130120]);
xlabel('eje x')
ylabel('eje y')
zlabel('eje z')

GRÁFICOS: 2D Y 3D______________________________
Representacióngráficadesuperficies.mesh(x,y,Z),
Creacióndeunamalla[X,Y]=meshgrid(x,y)
Gráficadelamallaconstruidasobrelasuperficiezmesh(X,Y,Z),meshz(X,Y,Z)
Ademáshaceunaproyecciónsobreelplanoz=0,meshc(X,Y,Z),líneasdecontornoen
elplanoz=0
Ejemplo10:
x=[0:2:200];y=[0:50];
%Obtenemoslamalladeldominio
[XY]=meshgrid(x,y);
length(x),length(y)
size(X),size(Y)
Z=X.^2-Y.^2;
figure(1);mesh(X,Y,Z)
figure(2);meshz(X,Y,Z)
figure(3);meshc(X,Y,Z)

GRÁFICOS: 2D Y 3D______________________________
Lomismoconsurf(X,Y,Z),surfc(X,Y,Z),surfl(X,Y,Z)
Unaformadistintaderepresentarfuncionestridimensionalesespormediodeisolíneas
ocurvasdenivel.Concontour(x,y,Z)yconcontour3(X,Y,Z)generamoslaslíenasde
niveldeunasuperficie.
Existenetiquetasespeciales,primeronecesitamossaberlosvaloresdelcontorno
cs=contour(Z)yluegoponemosclabel(cs)oclabel(cs,v)
pcolor(Z)dibujaunaproyecciónconsombrasdecolorsobreelplano,lagamade
coloresestáenconsonanciaconlasvariacionesdelamatrizZ.
Lafunciónsurfypcolortienediversasposibilidadesreferentesalaformaenqueson
representadaslasfacetasopolígonoscoloreados.Lastresposibilidadessonlas
siguientes:
•shadingflat:determinasombreadoconcolorconstanteparacadapolígono.Este
sombreadosellamaplanooflat.
•shadinginterp:establecequeelsombreadosecalcularáporinterpolacióndecolores
entrelosvérticesdecadafaceta.SellamatambiénsombreadodeGouraud
•shadingfaceted:consisteensombreadoconstanteconlíneasnegrassuperpuestas.
Estaeslaopciónpordefecto

Cuandosedeseadibujarunafiguraconundeterminadomapadecoloresseestableceuna
correspondencia(ounmapping)entrelosvaloresdelafunciónyloscoloresdelmapadecolores.
»caxis([cmin,cmax])%escalaelmapadecolores
colormap(opcion).Distintasescalasdecolores
hsv-Hue-saturation-valuecolormap.
hot-Black-red-yellow-whitecolormap.
gray-Lineargray-scalecolormap.
bone-Gray-scalewithtingeofbluecolormap.
copper-Linearcopper-tonecolormap.
pink-Pastelshadesofpinkcolormap.
white-Allwhitecolormap.
flag-Alternatingred,white,blue,andblackcolormap.
lines-Colormapwiththelinecolors.
colorcube-Enhancedcolor-cubecolormap.
vga -Windowscolormapfor16colors.
jet-VariantofHSV.
prism-Prismcolormap.
cool-Shadesofcyanandmagentacolormap.
autumn-Shadesofredandyellowcolormap.
spring-Shadesofmagentaandyellowcolormap.
winter-Shadesofblueandgreencolormap.
summer-Shadesofgreenandyellowcolormap.
GRÁFICOS: 2D Y 3D______________________________

colorbar(‘horiz’),colorbar(‘vertical’)%barraconlaescaladecolores.
brightenajustaelbrillodecolordelmapadecolores
[X,Y,Z]=sphere(n)dibujaunarepresentacióndelaesferaunidadcon
npuntosdediscretización
[X,Y,Z]=cylinder(rad,n)dibujaunarepresentacióndeuncilindro
unidadconnpuntosigualmenteespaciadoscuyasecciónvienedada
porlacurvacuyosradiosseguardanenelvectorrad.(1,1)y20
valorespordefecto.
fill3(x,y,z,c)%polígonostridimensionales
GRÁFICOS: 2D Y 3D______________________________

GRÁFICOS: 2D Y 3D______________________________
Manipulacióndegráficos
view:view(azimut,elev),view([xd,yd,zd]).
view(2)
view(3)
rotate(h,d,a)orotate(h,d,a,o)heselobjeto,desunvectorqueindicaladirecciónya
unángulo,oelorigenderotación
Eneldibujodefuncionestridimensionales,avecestambiénsonútileslosNaNs.Cuando
unapartedeloselementosdelamatrizdevaloresZsonNaNs,esapartedela
superficienosedibuja,permitiendoverelrestodelasuperficie.

GRÁFICOS: 2D Y 3D______________________________
hiddenoffdesactivaleeliminacióndelíneasescondidas
hiddenonsituaciónprevia

GRÁFICOS: 2D Y 3D______________________________
Transformacióndecoordenadas
[ang,rad]=cart2pol(x,y)%Decartesianasapolares
[ang,rad,z]=cart2pol(x,y,z)%Decartesianasacilindricas
[x,y]=pol2cart(ang,rad)%Depolaresacartesianas
[x,y,z]=pol2cart(ang,rad,z)%Decilindricasacartesianas
[angx,angz,rad]=cart2sph(x,y,z)%Decartesianasaesfericas
[x,y,z]=aph2cart(angx,angz,rad)%Deesfericasacartesianas
Ejemplo11:
%cilindricas
[ang,rad,z]=cart2pol(sqrt(3),1,2)
%esfericas
[ang1,ang2,rad1]=cart2sph(sqrt(3),1,2)

GRÁFICOS: 2D Y 3D______________________________
Creacióndepelículas
Paraprepararpequeñaspelículasomoviessepuedenutilizarlasfunciones
movie,movieinygetframe.Unapelículasecomponedevariasimágenes,
denominadasframes.Lafuncióngetframedevuelveunvectorcolumnaconla
informaciónnecesariaparareproducirlaimagenqueseacabade
representarenlafiguraoventanagráficaactiva,porejemploconlafunción
plot.Eltamañodeestevectorcolumnadependedeltamañodelaventana,
peronodelacomplejidaddeldibujo.Lafunciónmoviein(n)reserva
memoriaparaalmacenarnframes.Unavezcreadalapelículasepuede
representarelnúmerodevecesquesedeseeconelcomandomovie.
Ejemplo12:
forj=1:10
x=0:0.01:2*pi;
plot(x,sin(j*x)/2)
M(j)=getframe;
end
movie(M,10)

GRÁFICOS: 2D Y 3D______________________________
Ejercicio5.1:ConsideremoslaecuacióndeVanderWaals.Seconsideraelbenceno
paraelcuala=18.78atml
2
/mol
2
,b=0.1208l/mol.Representarsobreunamisma
gráficalasdossubgráficascorrespondientesa:
Isotermasde100,200,300y400ºC
Isobarasde25,35,45y55atm
Cadacurvadebeircontrazodiferenciado,coneltextoqueindiquelaisolíneaquese
harepresentado,asícomoeltítulodelagráficaylaetiquetadelosejes.R=0.0821y
V=[2:100];RTbV
V
a
P =−+ ))((
2

GRÁFICOS: 2D Y 3D______________________________
Ejercicio5.1:
a=18.78;
b=0.1208;
R=0.0821;
subplot(1,2,1)
T=[373:100:673];
V=[2:100];
fac1=R./(V-b);
fac2=a./V.^2;
P=zeros(4,length(V));
P(1,:)=T(1)*fac1-fac2;
P(2,:)=T(2)*fac1-fac2;
P(3,:)=T(3)*fac1-fac2;
P(4,:)=T(4)*fac1-fac2;
plot(V,P(1,:),'-',V,P(2,:),'--',V,P(3,:),':',V,P(4,:),'-.')
title('Ecuacion de Van der Waals: Isotermas')
xlabel('Volumen, ltr.')
ylabel('Presion, atm.')
axis([0, 50,0,15])
legend('T=100ºC','T=200ºC','T=300ºC','T=400ºC')

GRÁFICOS: 2D Y 3D______________________________
subplot(1,2,2)
P=[25:10:55];
T=zeros(4,length(V));
fac1=(V-b)/R;
T(1,:)=((P(1)+fac2).*fac1)-273.15;
T(2,:)=((P(2)+fac2).*fac1)-273.15;
T(3,:)=((P(3)+fac2).*fac1)-273.15;
T(4,:)=((P(4)+fac2).*fac1)-273.15;
plot(V,T(1,:),'-',V,T(2,:),'--',V,T(3,:),':',V,T(4,:),'-.')
title('Ecuacion de Van der Waals: Isobaras')
xlabel('Volumen, ltr.')
ylabel('Temperatura, ºC')
legend('P=25 atm.','P=35 atm.','P=45 atm.','P=55 atm.')

GRÁFICOS: 2D Y 3D______________________________

GRÁFICOS: 2D Y 3D______________________________
Ejercicio5.2Dadalafunciónf(x,y)=xy,obtenersobreunaventanagráficalas
representacionessiguientes:
-Lasuperficiedefinidaporlafunciónsobreeldominio[-10,10]*[-10,10].
-Laslíneasdecontornosobrelasuperficie
-Laproyeccióndelaslíneasdecontornosobreeldominodedefinición
-Laproyeccióndelaslíneasdecontornosobreelplanoxycorrespondientesalos
valores–4,-1,1y4.

GRÁFICOS: 2D Y 3D______________________________
Ejercicio5.2
x=[-10:0.5:10];y=x;
[X,Y]=meshgrid(x,y);
Z=X.*Y;
subplot(221)
mesh(X,Y,Z)
legend('z=xy')
xlabel('ejex')
ylabel('ejey')
zlabel('ejez')
title('superficiez=xy')
subplot(222)
contour3(Z)
gridoff
xlabel('ejex')
ylabel('ejey')

GRÁFICOS: 2D Y 3D______________________________
zlabel('ejez')
title('lineasdecontorno3D')
subplot(223)
cs=contour(Z);
contour(x,y,Z)
gridoff
clabel(cs)
xlabel('ejex')
ylabel('ejey')
title('Proyecciondelaslineasdecontorno')
subplot(224)
contour(Z,[-4,-1,1,4])
gridoff
xlabel('ejex')
ylabel('ejey')
title('Proyecciondelaslineasdecontorno')

GRÁFICOS: 2D Y 3D______________________________

GRÁFICOS: 2D Y 3D______________________________
Ejercicio5.3Representarlasuperficiederevoluciónobtenidaalgirarlacurva
y=x
2
+1alrededordelejeox
x=[0:0.1:1];

GRÁFICOS: 2D Y 3D______________________________
Ejercicio5.3
x=[0:0.1:1];%puntosdediscretizaciondelejeox
rad=x.^2+1;%vectorderadios
n=length(rad);%numeroderadios
cylinder(rad,n)%representaciondelcilindro
xlabel('ejex')
ylabel('ejey')
zlabel('ejez')
[X,Y,Z]=cylinder(rad,n);
h=surf(X,Y,Z);%calculodelobjeto
rotate(h,[0,1,0],90)
%Alrotardesaparecenlasetiquetasdelosejes
xlabel('ejex')
ylabel('ejey')
zlabel('ejez')
view(15,15)%cambiamoselpuntodeobservacion
gridoff
legend('f(x)=x^2+1')

GRÁFICOS: 2D Y 3D______________________________