Diagrama de Barras
El diagrama de barras (Bar Charts) es un gráfico
estadístico que nos permite representar la distribución de frecuencias
de variables cualitativas y cuantitativas discretas; nuestro objetivo es
pasar del lápiz y papel al uso de los lenguajes de programación R y
Python,trabajaremos con los paquete
ggplot2,lattice y la librería
Matplotlib, compartimos imagen relacionada al
respecto.
Data Set - mtcars
mtcars es un data set que ya viene precargado en el
lenguaje de programación R, cuenta con 11 variables y 32 observaciones,
nos enfocaremos en dos de sus variables, cyl
(cilindros) y gear (engranajes); como
mostramos a continuación.
summary(mtcars)
## mpg cyl disp hp
## Min. :10.40 Min. :4.000 Min. : 71.1 Min. : 52.0
## 1st Qu.:15.43 1st Qu.:4.000 1st Qu.:120.8 1st Qu.: 96.5
## Median :19.20 Median :6.000 Median :196.3 Median :123.0
## Mean :20.09 Mean :6.188 Mean :230.7 Mean :146.7
## 3rd Qu.:22.80 3rd Qu.:8.000 3rd Qu.:326.0 3rd Qu.:180.0
## Max. :33.90 Max. :8.000 Max. :472.0 Max. :335.0
## drat wt qsec vs
## Min. :2.760 Min. :1.513 Min. :14.50 Min. :0.0000
## 1st Qu.:3.080 1st Qu.:2.581 1st Qu.:16.89 1st Qu.:0.0000
## Median :3.695 Median :3.325 Median :17.71 Median :0.0000
## Mean :3.597 Mean :3.217 Mean :17.85 Mean :0.4375
## 3rd Qu.:3.920 3rd Qu.:3.610 3rd Qu.:18.90 3rd Qu.:1.0000
## Max. :4.930 Max. :5.424 Max. :22.90 Max. :1.0000
## am gear carb
## Min. :0.0000 Min. :3.000 Min. :1.000
## 1st Qu.:0.0000 1st Qu.:3.000 1st Qu.:2.000
## Median :0.0000 Median :4.000 Median :2.000
## Mean :0.4062 Mean :3.688 Mean :2.812
## 3rd Qu.:1.0000 3rd Qu.:4.000 3rd Qu.:4.000
## Max. :1.0000 Max. :5.000 Max. :8.000
summary(mtcars$cyl)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 4.000 4.000 6.000 6.188 8.000 8.000
summary(mtcars$gear)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 3.000 3.000 4.000 3.688 4.000 5.000
Bar Charts - barplot()
La función barplot()
nos permite crear diagramas de
barras (Bar Charts) en el lenguaje de programación R,
nos enfocamos en la variable cyl (cilindros) del data
set mtcars para la creación del gráfico estadístico
señalado, como se mmuestra a continuación.
x <- table(mtcars$cyl)
colores <- c("orange","blue","purple")
barplot(x,xlab="Cilindros",ylab="Frecuencias",main="Número de Cilindros",col=colores)

Bar Charts - ggplot2
ggplot2 es un paquete del lenguaje de programación
R, que nos permite crear gráficos estadísticos de gran calidad, nos
enfocaremos en la variable cyl (cilindros) del data set
mtcars para la creación del gráfico estadístico
señalado, como se mmuestra a continuación.
ggplot(mtcars,aes(cyl)) + geom_bar(fill=colores) + labs(x="Cilindros",y="Frecuencias",title="Número de Cilindros") + theme_dark()

Bar Charts - Matplotlib
Mencionamos líneas arriba que haremos uso del lenguaje de
programación Python, la librería
Matplotlib nos permite crear gráficos estadísticos de
muy buena calidad, como se muestra a continuación.
import matplotlib.pyplot as plt
x_axis = ['Python', 'R', 'Node.js', 'PHP']
y_axis = [50,20,35,47]
plt.bar(x_axis, y_axis)
plt.ylabel('Number of Users (Millions)')
plt.xlabel('Programming Languages')
plt.title('Users - Programming Languages')
plt.show()

LS0tDQp0aXRsZTogIkJhciBDaGFydHMgLSBEaWFncmFtYXMgZGUgQmFycmFzIg0KYXV0aG9yOiAiUmVuem8gQ8OhY2VyZXMgUm9zc2kiDQpkYXRlOiAiMjAyMi8wNC8wNSINCnN1YnRpdGxlOiBSIC0gUHl0aG9uDQpvdXRwdXQ6DQogIGh0bWxfZG9jdW1lbnQ6DQogICAgdG9jOiBUUlVFDQogICAgdG9jX2Zsb2F0OiBUUlVFDQogICAgY29kZV9kb3dubG9hZDogVFJVRQ0KLS0tDQoNCjwhLS0gQcOxYWRpciBjb21lbnRhcmlvcyBhIG51ZXN0cm8gZG9jdW1lbnRvIFJNYXJrZG93biAtIEhUTUwgVGFncyAtLT4NCg0KYGBge3Igc2V0dXAsaW5jbHVkZT1GQUxTRX0NCg0KbGlicmFyeShnZ3Bsb3QyKQ0KDQpsaWJyYXJ5KHJldGljdWxhdGUpDQoNCmtuaXRyOjpvcHRzX2NodW5rJHNldChlY2hvID0gVFJVRSkNCg0KdXNlX3B5dGhvbigiQzovVXNlcnMvcmVuem9yb3NzaXYvQXBwRGF0YS9Mb2NhbC9Qcm9ncmFtcy9QeXRob24vUHl0aG9uMzEwL3B5dGhvbi5leGUiKQ0KYGBgDQoNCiMjIERpYWdyYW1hIGRlIEJhcnJhcw0KDQpFbCBkaWFncmFtYSBkZSBiYXJyYXMgKCoqQmFyIENoYXJ0cyoqKSBlcyB1biBncsOhZmljbyBlc3RhZMOtc3RpY28gcXVlIG5vcyBwZXJtaXRlIHJlcHJlc2VudGFyIGxhIGRpc3RyaWJ1Y2nDs24gZGUgZnJlY3VlbmNpYXMgZGUgdmFyaWFibGVzIGN1YWxpdGF0aXZhcyB5IGN1YW50aXRhdGl2YXMgZGlzY3JldGFzOyBudWVzdHJvIG9iamV0aXZvIGVzIHBhc2FyIGRlbCBsw6FwaXogeSBwYXBlbCBhbCB1c28gZGUgbG9zIGxlbmd1YWplcyBkZSBwcm9ncmFtYWNpw7NuIFIgeSBQeXRob24sdHJhYmFqYXJlbW9zIGNvbiBsb3MgcGFxdWV0ZSAqKmdncGxvdDIqKiwqKmxhdHRpY2UqKiB5IGxhIGxpYnJlcsOtYSAqKk1hdHBsb3RsaWIqKiwgY29tcGFydGltb3MgaW1hZ2VuIHJlbGFjaW9uYWRhIGFsIHJlc3BlY3RvLg0KDQo8Y2VudGVyPg0KDQohW10oZGlhZ3JhbWFfYmFycmFzX2FtYW5vLmpwZyl7d2lkdGg9NDAwfQ0KPC9jZW50ZXI+DQoNCg0KIyMgRGF0YSBTZXQgLSBtdGNhcnMNCg0KKiptdGNhcnMqKiBlcyB1biBkYXRhIHNldCBxdWUgeWEgdmllbmUgcHJlY2FyZ2FkbyBlbiBlbCBsZW5ndWFqZSBkZSBwcm9ncmFtYWNpw7NuIFIsIGN1ZW50YSBjb24gMTEgdmFyaWFibGVzIHkgMzIgb2JzZXJ2YWNpb25lcywgbm9zIGVuZm9jYXJlbW9zIGVuIGRvcyBkZSBzdXMgdmFyaWFibGVzLCBjeWwgKCoqY2lsaW5kcm9zKiopIHkgZ2VhciAoKiplbmdyYW5hamVzKiopOyBjb21vIG1vc3RyYW1vcyBhIGNvbnRpbnVhY2nDs24uDQoNCg0KYGBge3IgbXRjYXJzfQ0Kc3VtbWFyeShtdGNhcnMpDQoNCnN1bW1hcnkobXRjYXJzJGN5bCkNCg0Kc3VtbWFyeShtdGNhcnMkZ2VhcikNCmBgYA0KDQoNCiMjIEJhciBDaGFydHMgLSBiYXJwbG90KCkNCg0KTGEgZnVuY2nDs24gYGJhcnBsb3QoKWAgbm9zIHBlcm1pdGUgY3JlYXIgZGlhZ3JhbWFzIGRlIGJhcnJhcyAoKipCYXIgQ2hhcnRzKiopIGVuIGVsIGxlbmd1YWplIGRlIHByb2dyYW1hY2nDs24gUiwgbm9zIGVuZm9jYW1vcyBlbiBsYSB2YXJpYWJsZSBjeWwgKCoqY2lsaW5kcm9zKiopIGRlbCBkYXRhIHNldCAqKm10Y2FycyoqIHBhcmEgbGEgY3JlYWNpw7NuIGRlbCBncsOhZmljbyBlc3RhZMOtc3RpY28gc2XDsWFsYWRvLCBjb21vIHNlIG1tdWVzdHJhIGEgY29udGludWFjacOzbi4NCg0KYGBge3IgYmFycGxvdCxmaWcuYWxpZ249J2NlbnRlcid9DQp4IDwtIHRhYmxlKG10Y2FycyRjeWwpDQoNCmNvbG9yZXMgPC0gYygib3JhbmdlIiwiYmx1ZSIsInB1cnBsZSIpDQoNCmJhcnBsb3QoeCx4bGFiPSJDaWxpbmRyb3MiLHlsYWI9IkZyZWN1ZW5jaWFzIixtYWluPSJOw7ptZXJvIGRlIENpbGluZHJvcyIsY29sPWNvbG9yZXMpDQpgYGANCg0KDQojIyBCYXIgQ2hhcnRzIC0gZ2dwbG90Mg0KDQoqKmdncGxvdDIqKiBlcyB1biBwYXF1ZXRlIGRlbCBsZW5ndWFqZSBkZSBwcm9ncmFtYWNpw7NuIFIsIHF1ZSBub3MgcGVybWl0ZSBjcmVhciBncsOhZmljb3MgZXN0YWTDrXN0aWNvcyBkZSBncmFuIGNhbGlkYWQsIG5vcyBlbmZvY2FyZW1vcyBlbiBsYSB2YXJpYWJsZSBjeWwgKCoqY2lsaW5kcm9zKiopIGRlbCBkYXRhIHNldCAqKm10Y2FycyoqIHBhcmEgbGEgY3JlYWNpw7NuIGRlbCBncsOhZmljbyBlc3RhZMOtc3RpY28gc2XDsWFsYWRvLCBjb21vIHNlIG1tdWVzdHJhIGEgY29udGludWFjacOzbi4NCg0KYGBge3IgZ2dwbG90LGZpZy5hbGlnbj0nY2VudGVyJ30NCg0KZ2dwbG90KG10Y2FycyxhZXMoY3lsKSkgKyBnZW9tX2JhcihmaWxsPWNvbG9yZXMpICsgbGFicyh4PSJDaWxpbmRyb3MiLHk9IkZyZWN1ZW5jaWFzIix0aXRsZT0iTsO6bWVybyBkZSBDaWxpbmRyb3MiKSArIHRoZW1lX2RhcmsoKQ0KDQpgYGANCg0KDQoNCiMjIEJhciBDaGFydHMgLSBNYXRwbG90bGliDQoNCk1lbmNpb25hbW9zIGzDrW5lYXMgYXJyaWJhIHF1ZSBoYXJlbW9zIHVzbyBkZWwgbGVuZ3VhamUgZGUgcHJvZ3JhbWFjacOzbiAqKlB5dGhvbioqLCBsYSBsaWJyZXLDrWEgKipNYXRwbG90bGliKiogbm9zIHBlcm1pdGUgY3JlYXIgZ3LDoWZpY29zIGVzdGFkw61zdGljb3MgZGUgbXV5IGJ1ZW5hIGNhbGlkYWQsIGNvbW8gc2UgbXVlc3RyYSBhIGNvbnRpbnVhY2nDs24uDQoNCmBgYHtweXRob24sZmlnLmFsaWduPSdjZW50ZXInLHJlc3VsdHM9J2hpZGUnLGNvbGxhcHNlPVRSVUV9DQppbXBvcnQgbWF0cGxvdGxpYi5weXBsb3QgYXMgcGx0DQogDQp4X2F4aXMgPSBbJ1B5dGhvbicsICdSJywgJ05vZGUuanMnLCAnUEhQJ10NCiANCnlfYXhpcyA9IFs1MCwyMCwzNSw0N10NCiANCnBsdC5iYXIoeF9heGlzLCB5X2F4aXMpDQoNCiANCnBsdC55bGFiZWwoJ051bWJlciBvZiBVc2VycyAoTWlsbGlvbnMpJykNCiANCnBsdC54bGFiZWwoJ1Byb2dyYW1taW5nIExhbmd1YWdlcycpDQogDQpwbHQudGl0bGUoJ1VzZXJzIC0gUHJvZ3JhbW1pbmcgTGFuZ3VhZ2VzJykNCiANCnBsdC5zaG93KCkNCg0KYGBgDQoNCg==