Brz početak rada sa R: Matematički izrazi za grafike (22. Deo)

Sada ćemo razmotriti kako kreirati matematičke izraze za naše grafike.
Matematički izrazi se mogu dodati na grafik korišćenjem expression(paste()) i substitute(). Ako su nam potrebni matematički izrazi u naslovima osa, tada ćemo isključiti podrazumevajuću vrednost i uključiti grčke simbole tako što ćemo ih napisati na engleskom. Moguće je kreirati razlomke korišćenjem frac() komande. Uočiti kako smo dobili plus ili minus znak korišćenjem sintakse: %+-%.
Evo jednog lepog primera. Kreirajmo skup 71 vrednosti od – 6 do + 6. Ove vrednosti su vrednosti horizontalne ose.
x <- seq(-6, 6, len = 71)
Sada crtamo kosinusnu funkciju korišćenjem neprekidne krive (korišćenjem type="l"), dok potiskujemo podrazumevajuće vrednosti x ose korišćenjem sintakse: xaxt="n".
plot(x, cos(x),type="l",xaxt="n", xlab=expression(paste("Angle ",theta)), ylab=expression("sin "*beta))
gde smo uneli relevantan matematički tekst za naslove osa koristeći expression(paste()). Evo kako izgleda grafik do sada:

Sada kreiramo horizontalnu osu prema našoj specifikaciji, uključujući releventne naslove:
axis(1, at = c(-2*pi, -1.5*pi, -pi, -pi/2, 0, pi/2, pi, 1.5*pi, 2*pi), lab = expression(-2*phi, -1.5*phi, -phi, -phi/2, 0, phi/2, phi, 2*phi, 1.5*phi))

Sada ćemo dodati par matematičkih izraza, odgovarajuće centriranih. Prvi argument u svakoj text() funkciji daje vrednost duž horizontalne ose gde će tekst biti centriran.
text(-0.7*pi,0.5,substitute(chi^2=="23.5"))
text(0.1*pi, -0.5, expression(paste(frac(alpha*omega, sigma*phi*sqrt(2*pi)), " ", e^{frac(-(5*x+2*mu)^3, 5*sigma^3)})))
text(0.3*pi,0,expression(hat(z) %+-% frac(se, alpha)))

Ovo je naš grafik sa svim matematičkim izrazima:

To nije bilo tako teško! U 23. Delu razmotrićemo par novih tehnika crtanja u R.
Vidimo se kasnije!
David

Dodatak: Korišćeni R kodovi

# Kreirati 71 vrednost za horizontalnu osu.
x <- seq(-6, 6, len = 71)

# Nacrtati kosinusnu funkciju. 
plot(x, cos(x),type="l",xaxt="n", xlab=expression(paste("Angle ",theta)), ylab=expression("sin "*beta))

# Dodati oznake vrednosti na horizontalnu osu. 
axis(1, at = c(-2*pi, -1.5*pi, -pi, -pi/2, 0, pi/2, pi, 1.5*pi, 2*pi), lab = expression(-2*phi, -1.5*phi, -phi, -phi/2, 0, phi/2, phi, 2*phi, 1.5*phi))

# Dodati nekoliko matematičkih izraza.
text(-0.7*pi,0.5,substitute(chi^2=="23.5"))
text(0.1*pi, -0.5, expression(paste(frac(alpha*omega, sigma*phi*sqrt(2*pi)), " ", e^{frac(-(5*x+2*mu)^3, 5*sigma^3)})))
text(0.3*pi,0,expression(hat(z) %+-% frac(se, alpha)))