¿Cómo calcular LAS HORAS DE LUZ SOLAR EN CUALQUIER PARTE DEL MUNDO? cASO APLICADO CON R – Manual datlas

El estudio de energías alternativas y luz solar han sido temas de prioridad durante los últimos 10 años en Latinoamérica. Se ha incrementado cada vez más la conciencia de lo contaminante que pueden ser las fuentes de energías fósiles. Y en ese sentido el estudio de luz solar y el interés por sus aplicaciones ha ido a la alza. En esta columna compartiremos un método en R para poder obtener información de luz solar en cualquier parte del mundo utilizando la paquetería suncalc.

¿Cómo empezar?

El ejercicio que haremos será en el lenguaje de R. Es una iniciativa de software libre muy utilizada para analítica y ciencia de datos. Una combinación recomendada es utilizar R junto con el IDE de R Studio para poder tener una plataforma de trabajo más cómoda y ordenada.

¿Qué paqueterías utilizar?

R es un lenguaje que tiene una base de funciones en CRAN, su base, que se pueden utilizar y en automático ya vienen precargados al momento que descargas R. En complemento, sistemas como R permiten la instalación de librerías externas desarrolladas por la comunidad que permiten ampliar las capacidades del mismo. Las librerías que vamos a utilizar para este ejercicio son:

library(suncalc)
library(tidyverse)
library(scales)

También te puede interesar «Análisis de discurso de AMLO con NLP en R»

¿Cómo identificar las zonas horarias?

Las zonas horarias serán importantes para el ejercicio. En la herramienta suncalc.org puedes identificar la zona horaria de cualquier ubicación del mundo. En el buscador, para este ejemplo, ubicamos San Pedro Garza García, en el Estado de Nuevo León en México.

Lo podemos declarar en nuestro código como lo siguiente:

names <- «San Pedro Garza Garcia (México)»
lat <-25.6510566
lon <- -100.4025978

¿Cómo generar la consulta para calcular la hora de amanecer y anochecer?

El código es la siguiente, hay que declarar primero las fechas que estamos considerando para la métrica , después estructurar la tabla reporte de respuesta que en este caso tiene el amanecer, el horario en que termina el amanecer, puesta del sol y la hora a la que comienza. También incluye la declaración de la latitud y la longitud, en este caso como variables que declaramos previamente. Y finalmente el «timezone» o la zona horaria que encontramos en el sitio web referenciado

df <-
getSunlightTimes(
date = seq.Date(as.Date(«2018-12-01»), as.Date(«2019-12-31»), by = 1),
keep = c(«sunrise», «sunriseEnd», «sunset», «sunsetStart»),
lat = lat,
lon = lon,
tz = «America/Monterrey»

El reporte lo podemos consultar el reporte. Para esto podemos revisar las primeras filas con: head(df)

¿Cómo calcular las horas de luz en una ubicación determinada?

Para calcular las horas de luz, el código es más complejo, pero tiene que ver con una particularidad del sistema para manejar los horarios.

df %>%
mutate(
date = as.POSIXct(date),
day_length = as.numeric(sunset – sunrise)
) %>%
ggplot(aes(x = date, y = day_length)) +
geom_area(fill = «#FDE725FF», alpha = .4) +
geom_line(color = «#525252») +
scale_x_datetime(
expand = c(0, 0),
labels = date_format(«%b ‘%y»),
breaks = seq(as.POSIXct(min(df$date)), as.POSIXct(max(df$date)), «month»),
minor_breaks = NULL
) +
scale_y_continuous(
limits = c(0, 24),
breaks = seq(0, 24, 2),
expand = c(0, 0),
minor_breaks = NULL
) +
labs(x = «Date», y = «Hours», title = names) +
theme_bw()

Finalmente , podemos observar los resultados en un gráfico como los siguientes.

En contraste, si lo ponemos en comparación contra Oslo Noruega, digamos que San Pedro GG tiene mucho mayor luz solar que otros.

¿Qué podría suceder al futuro?

Futuros análisis de datos nos podrán apoyar a identificar, por ejemplo, la potencial captación de luz para un edificio. O, en el caso de negocios que tienen una dependencia con la luz solar, tener una mayor predictibilidad de sus oportunidades comerciales.

¿Qué otras aplicaciones piensas que pueden funcionar? Cuéntanos en @DatlasMX . Hasta aquí la columna de hoy, esperamos la puedas compartir con tus colegas y personas que les pueda interesar

Fuentes: