En este breve tutorial, pretendo enseñar a realizar graficas en R, asà como a ordenar y presentar sus datos de una manera satisfactoria y agradable a la vista, comenzaremos con las diferentes funciones matemáticas y después saltaremos a las funciones trigonométricas, para concluir con una de las herramientas que nos presenta R para la organización de los datos, el Data Frame.
A continuación dejo un video que explica más a detalle este tutorial, recomiendo encarecidamente que mientras leen el tutorial reproduzcan el video, pues ayudara a facilitar la comprensión y brindara datos importantes que complementan este breve manual.
VIDEO
Comenzaremos con las funciones matemáticas
Primero, Definimos un dominio x
para nuestras funciones
x<-(-10:10)
Ahora, como primer ejemplo, veremos cómo se crea la gráfica de una función constante f(x)=12
fx<-rep(12, 21)
plot(x,fx)
De manera similar al ejemplo anterior, ahora vamos a crear una función identidad de la siguiente manera g(x)=x
, para crear su gráfica, esta vez añadiremos type="o"
al final, para que también se grafique la lÃnea que una cada punto de la grafica
gx<-x
plot(x,gx, type="o")
Bien, ahora creemos y grafiquemos una función lineal, de la siguiente manera: y=mx+b ->h(x)=5x+2
, más al final añadiremos type="l"
para que la gráfica sea solo una lÃnea
hx<-5*x+2
plot(x,hx, type="l")
Ahora toca la función cuadrática i(x)=x^2
, esta vez, añadiremos nuevas opciones de personalización: utilizaremos col="..."
para determinar cuál será el color de la gráfica, pueden escribir el color deseado en inglés o bien añadir un numero al azar
ix<-x^2
plot(x,ix, col="98",type="o")
A continuación haremos una función cubica j(x)=x^3
, en este caso usaremos comandos para determinar el nombre de la gráfica main="…"
, el nombre del eje x xlab="…"
, y el nombre para el eje y ylab="…"
jx<-x^3
plot(x,jx, main="Función cúbica", xlab="Eje x", ylab="Eje y", col="black", type="o")
Turno de la función racional k(x)=6/x
, vamos a añadir un puede de página para nuestra grafica usando el domando sub="..."
kx<-6/x
plot(x,kx, main="Función racional", sub="Elabora: UwUtHorny1", xlab="Eje x", ylab="Eje y", col="purple", type="o")
Continuemos con una función logarÃtmica l(x)=log(x)
lx<-log(x)
## Warning in log(x): NaNs produced
plot(x,lx, main="Función logarÃtmica", sub="Elabora: UwUtHorny1",xlab="Eje x", ylab="Eje y", col="12", type="o")
Toca intentar con una función exponencial m(x)=7^x
mx<-7^x
plot(x,mx, main="Función exponencial", sub="Elabora: UwUtHorny1",xlab="Eje x", ylab="Eje y",col="87", type="o")
Ya habiendo terminado con las funciones matemáticas, vamos a dar el salto hacia las funciones trigonométricas
Después la función Coseno o(x)=cos(x)
ox<-cos(x)
plot(x,ox, main="Función coseno", sub="Elabora: UwUtHorny1",xlab="Eje x", ylab="Eje y", col="blue", type="l")
Continuemos con la función Tangente p(x)=tan(x)
px<-tan(x)
plot(x,px, main="Función tangente", sub="Elabora: UwUtHorny1", xlab="Eje x", ylab="Eje y", col="darkblue", type="o")
Habiendo terminado con las funciones, pasemos a la organización de los datos con los que contamos
Comenzaremos creando un cuadro de datos de todos nuestros resultados usando la función data.frame (...)
total_de_datos<-data.frame(x,fx,gx,hx,ix,jx,kx,lx,mx,nx,ox,px)
total_de_datos
## x fx gx hx ix jx kx lx mx nx
## 1 -10 12 -10 -48 100 -1000 -0.6000000 NaN 3.540133e-09 0.5440211
## 2 -9 12 -9 -43 81 -729 -0.6666667 NaN 2.478093e-08 -0.4121185
## 3 -8 12 -8 -38 64 -512 -0.7500000 NaN 1.734665e-07 -0.9893582
## 4 -7 12 -7 -33 49 -343 -0.8571429 NaN 1.214266e-06 -0.6569866
## 5 -6 12 -6 -28 36 -216 -1.0000000 NaN 8.499860e-06 0.2794155
## 6 -5 12 -5 -23 25 -125 -1.2000000 NaN 5.949902e-05 0.9589243
## 7 -4 12 -4 -18 16 -64 -1.5000000 NaN 4.164931e-04 0.7568025
## 8 -3 12 -3 -13 9 -27 -2.0000000 NaN 2.915452e-03 -0.1411200
## 9 -2 12 -2 -8 4 -8 -3.0000000 NaN 2.040816e-02 -0.9092974
## 10 -1 12 -1 -3 1 -1 -6.0000000 NaN 1.428571e-01 -0.8414710
## 11 0 12 0 2 0 0 Inf -Inf 1.000000e+00 0.0000000
## 12 1 12 1 7 1 1 6.0000000 0.0000000 7.000000e+00 0.8414710
## 13 2 12 2 12 4 8 3.0000000 0.6931472 4.900000e+01 0.9092974
## 14 3 12 3 17 9 27 2.0000000 1.0986123 3.430000e+02 0.1411200
## 15 4 12 4 22 16 64 1.5000000 1.3862944 2.401000e+03 -0.7568025
## 16 5 12 5 27 25 125 1.2000000 1.6094379 1.680700e+04 -0.9589243
## 17 6 12 6 32 36 216 1.0000000 1.7917595 1.176490e+05 -0.2794155
## 18 7 12 7 37 49 343 0.8571429 1.9459101 8.235430e+05 0.6569866
## 19 8 12 8 42 64 512 0.7500000 2.0794415 5.764801e+06 0.9893582
## 20 9 12 9 47 81 729 0.6666667 2.1972246 4.035361e+07 0.4121185
## 21 10 12 10 52 100 1000 0.6000000 2.3025851 2.824752e+08 -0.5440211
## ox px
## 1 -0.8390715 -0.6483608
## 2 -0.9111303 0.4523157
## 3 -0.1455000 6.7997115
## 4 0.7539023 -0.8714480
## 5 0.9601703 0.2910062
## 6 0.2836622 3.3805150
## 7 -0.6536436 -1.1578213
## 8 -0.9899925 0.1425465
## 9 -0.4161468 2.1850399
## 10 0.5403023 -1.5574077
## 11 1.0000000 0.0000000
## 12 0.5403023 1.5574077
## 13 -0.4161468 -2.1850399
## 14 -0.9899925 -0.1425465
## 15 -0.6536436 1.1578213
## 16 0.2836622 -3.3805150
## 17 0.9601703 -0.2910062
## 18 0.7539023 0.8714480
## 19 -0.1455000 -6.7997115
## 20 -0.9111303 -0.4523157
## 21 -0.8390715 0.6483608
Ahora, graficaremos el cuadro de datos con la función plot
plot(total_de_datos)
Intentemos graficar columnas especÃficas, para esto escribiremos el nombre de nuestro data Frame, seguido por el signo $
y la columna deseada, recuerden que deben ser 2 columnas
plot(total_de_datos$fx,total_de_datos$gx, type = "o", col= "orange", sub= "Elabora: UwUtHorny1")
plot(total_de_datos$jx,total_de_datos$lx, type = "o", col= "purple", sub= "Elabora: UwUtHorny1")