library(tidyverse)
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.1 ──
## ✔ ggplot2 3.3.6 ✔ purrr 0.3.4
## ✔ tibble 3.1.7 ✔ dplyr 1.0.9
## ✔ tidyr 1.2.0 ✔ stringr 1.4.0
## ✔ readr 2.1.2 ✔ forcats 0.5.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
library(lubridate) # Cargo paquetes
##
## Attaching package: 'lubridate'
## The following objects are masked from 'package:base':
##
## date, intersect, setdiff, union
delitos <- read.csv("https://cdaj.netlify.app/data/delitos_fecha_lugar.csv") # Cargo base de datos
## Warning in scan(file = file, what = what, sep = sep, quote = quote, dec = dec, :
## embedded nul(s) found in input
delitos_franja_horaria <- delitos %>% # PRealizo un conteo previo de las observaciones con la función count() y luego grafico utilizando el nuevo set de datos
count(franja, tipo)
ggplot(delitos_franja_horaria) +geom_line(aes(x = factor(franja), y = n, color = tipo, group = tipo)) + labs(title = "delitos segun franjas horarias",
subtitle = "Ciudad Autónoma de Buenos Aires, 2020",
caption = "Fuente: portal de datos abiertos de la Ciudad - http://data.buenosaires.gob.ar",
x = "franja horaria",
y = "cantidad",
fill = "Tipo")
#El grafico muestra que: entre las 0 y las 4 am la cantidad de delitos por hora desciende. Entre las 4 y 8 am la cantidad de delitos por hora comienza a incrementarse. A partir de las 11:00 pm la cantidad de delitos comienza a decaer nuevamente. El horario pico del delito de robo es a las 08:00pm, del delito de hurto esa las 10:00 am y a las 12:00 am. El horario pico del delito de lesiones es a las 2:00 pm y a las 6:0 pm. Todo lo anterior a excepciòn del homicidio, que, en general siempre se mantiene estable.
##Volvamos al mapa de puntos que realizamos en la seción 5.1.2, donde ajustamos los atributos “color”, “size” y “alpha” para mejorar los resultados, además de probar con facetados y mapas de densidad. ¿Qué otras técnicas podemos usar para lidiar con el exceso de información volcada en pantalla? Sugerencia: intentar con geom_count(), que se emplea de forma similar ageom_point() (véase https://ggplot2.tidyverse.org/reference/geom_count.html)
library(ggmap)
## Google's Terms of Service: https://cloud.google.com/maps-platform/terms/.
## Please cite ggmap if you use it! See citation("ggmap") for details.
bbox <- make_bbox(delitos$longitud, delitos$latitud)
CABA <- get_stamenmap(bbox = bbox, maptype = "toner", zoom = 12)
## Source : http://tile.stamen.com/toner/12/1381/2466.png
## Source : http://tile.stamen.com/toner/12/1382/2466.png
## Source : http://tile.stamen.com/toner/12/1383/2466.png
## Source : http://tile.stamen.com/toner/12/1384/2466.png
## Source : http://tile.stamen.com/toner/12/1381/2467.png
## Source : http://tile.stamen.com/toner/12/1382/2467.png
## Source : http://tile.stamen.com/toner/12/1383/2467.png
## Source : http://tile.stamen.com/toner/12/1384/2467.png
## Source : http://tile.stamen.com/toner/12/1381/2468.png
## Source : http://tile.stamen.com/toner/12/1382/2468.png
## Source : http://tile.stamen.com/toner/12/1383/2468.png
## Source : http://tile.stamen.com/toner/12/1384/2468.png
## Source : http://tile.stamen.com/toner/12/1381/2469.png
## Source : http://tile.stamen.com/toner/12/1382/2469.png
## Source : http://tile.stamen.com/toner/12/1383/2469.png
## Source : http://tile.stamen.com/toner/12/1384/2469.png
ggmap(CABA) +
geom_point(data = delitos, aes(x = longitud, y = latitud),
color = "orange", size = 0.1, alpha = 0.1) #cargo el mapa del manual y pruebo otras tecnicas para lidiar con el exceso de informaciòn
## Warning: Removed 411 rows containing missing values (geom_point).
##Pruebo otras tecnicas para lidiar con el exceso de informaciòn
ggmap(CABA) +
geom_count(data = delitos, aes(x = longitud, y = latitud),
color = "red", size = 0.1, alpha = 0.1) #pruebo otras con geom_point para lidiar con el exceso de informacion
## Warning: Removed 411 rows containing non-finite values (stat_sum).