Gráficos de barras en Base R

  1. Educación
  2. Matemáticas
  3. Estadísticas
  4. Gráficos de barras en Base R

Libro Relacionado

Por Joseph Schmuller

Muchas veces la variable dependiente es un punto de datos en lugar de una frecuencia. El cuadro muestra los datos de los ingresos de los espacios comerciales a principios de la década de 1990. (Los datos, por cierto, son del Departamento de Comercio de los EE.UU., a través del Resumen Estadístico de los EE.UU.)

Ingresos del Espacio Comercial de los Estados Unidos 1990-1994 (En millones de dólares)

Industria1990199119999219931994Satélites comerciales suministrados1,0001,3001,3001,3001,1001,1001,400Servicios de satélite8001,2001,5001,8502,330Equipos terrestres de satélite8601,3001,4001,6001,970Lanzamientos comerciales570380450465580Datos de teledetección155190210250250300Los

datos son los números en las celdas, que representan ingresos en miles de dólares. En la figura aparece un gráfico de barras R de base de los datos de esta tabla.

Si tuvieras que hacer una presentación sobre estos datos, estarías de acuerdo en que tu audiencia preferiría el gráfico a la tabla. Aunque la tabla es informativa, no llama la atención de la gente. Es más fácil ver las tendencias en el gráfico: los servicios por satélite aumentaron más rápidamente, mientras que los lanzamientos comerciales se mantuvieron bastante nivelados, por ejemplo.

Este gráfico se denomina gráfico de barras agrupadas. ¿Cómo se crea una trama como ésta en la base R?

Lo primero que hay que hacer es crear un vector de los valores en las celdas:

valores de rev. <-
c(1000,1300,1300,1100,1400,800,1200,1500,1850, 2330,860,1300,1400,1600,1970,570,380,450,465,580, 155,190,210,250,300)

Aunque las comas aparezcan en los valores de la tabla (para valores superiores a mil), no puede haber comas en los valores del vector! (Por la razón obvia: las comas separan los valores consecutivos en el vector.)

Luego, conviertes este vector en una matriz. Debe indicar a R cuántas filas (o columnas) habrá en la matriz, y que los valores se cargan en la matriz fila por fila:

espacio.rev <- matrix(rev.values,nrow=5,byrow = T)

Finalmente, se suministran los nombres de columna y de línea a la matriz:

colnames(space.rev) <-
c(“1990″,”1991″,”1992″,”1993″,”1994”)

rownames(space.rev)
<- c("Commercial Satellites Delivered","Satellite Services","Satellite Ground Equipment","Commercial Launches","Remote Sensing Data") Echa un vistazo a la matriz:

> espacio.rev

……… ….1990 1991 1992 1993 1994

Satélites comerciales entregados 1000 1300 1300 1300 1100 1400

Servicios por satélite 800 1200 1500 1850 2330

Equipo terrestre de satélites 860 1300 1400 1600 1970

Lanzamientos comerciales 570 380 450 465 580

Datos de teledetección 155 190 210 250 300

Perfecto. Se parece a la mesa.

Con los datos en la mano, se pasa al gráfico de barras. Se crea un vector de colores para las barras:

color.names = c(“negro”,”gris25″,”gris50″,”gris75″,”blanco”)

Unas palabras sobre esos nombres de color: Puede unir cualquier número del 0 al 100 con “gris” y obtener un color: “gris0” es equivalente a “negro” y “gris100” es equivalente a “blanco”. (Mucho más de cincuenta sombras, ….)

Y ahora, la trama:

barplot(space.rev, junto a = T, xlab= “Año”,ylab= “Ingresos (X $1,000)”, col=color.names)

beside = T significa que las barras estarán, bueno, una al lado de la otra. El argumento col = color.names proporciona los colores que usted especificó en el vector.

El gráfico resultante se muestra aquí.

Lo que falta, por supuesto, es la leyenda. Añade eso con la función legend() para producir la figura:

> legend(1,2300,rownames(space.rev), cex=0.7, fill = color.names, bty = “n”)

Los dos primeros valores son las coordenadas x e y para localizar la leyenda. (¡Eso requirió mucho trabajo!). El siguiente argumento muestra lo que entra en la leyenda (los nombres de las industrias). El argumento cex especifica el tamaño de los caracteres de la leyenda. El valor, 0.7, indica que usted quiere que los caracteres sean el 70 por ciento del tamaño que tendrían normalmente. Esa es la única manera de ajustar la leyenda en el gráfico. (Piense en “cex” como “expansión de caracteres”, aunque en este caso es “contracción de caracteres”) fill = color.names coloca las muestras de color en la leyenda, junto a los nombres de las filas. Ajustar bty (el “tipo de borde”) a “n” (“ninguno”) es otro pequeño truco para ajustar la leyenda en el gráfico.

Reply