library(dplyr)
library(tidyr)
library(palmerpenguins)
library(plotly)Soluciones capítulo 5
Actividad 1
Utilizando el dataset diamonds, representa la relación en un gráfico de puntos del precio frente a los quilates.
diamonds_5k <- sample_n(diamonds, 5000)
plot_ly(diamonds_5k, type = "scatter", mode = "markers",
x = ~carat, y = ~price)Actividad 2
Con el dataset penguins:
Pinta la relación entre longitud y profundidad del pico.
Añade al gráfico del punto 1 la distinción entre especies mediante el color.
Añade al gráfico del punto 1 la distinción entre el peso corporal mediante el color.
plot_ly(penguins, type = "scatter", mode = "markers",
x = ~bill_length_mm, y = ~bill_depth_mm)plot_ly(penguins, type = "scatter", mode = "markers",
x = ~bill_length_mm, y = ~bill_depth_mm, color = ~species)plot_ly(penguins, type = "scatter", mode = "markers",
x = ~bill_length_mm, y = ~bill_depth_mm, color = ~body_mass_g)Actividad 3
- Lee los datos del economista (dat/economist.csv), con indicadores de desarrollo y corrupción por países:
- HDI: Human Development Index (1: más desarrollado)
- CPI: Corruption Perception Index (10: menos corrupto)
- Crea un gráfico que:
- Cada país sea un punto
- El eje x indique CPI, el y HDI
- El color del punto indique la región
- Su tamaño sea proporcional al ranking HDI
economist <- read.csv("dat/economist.csv")
plot_ly(economist, type = "scatter", mode = "markers",
x = ~CPI, y = ~HDI, size = ~HDI.Rank, color = ~Region, text = ~Country,
hovertemplate = "<b>%{text}</b><br>CPI: %{x}<br>HDI: %{y}")Actividad 4
Lee los datos de los resultados de las elecciones presidenciales de los Estados Unidos (dat/usa_president.csv).
Pinta en un gráfico de líneas la evolución del número de votos a lo largo de los años del partido republicado frente al demócrata.
usa_president <- read.csv("dat/usa_president.csv")
usa_elections <- usa_president %>%
filter(!writein, party %in% c("democrat", "republican")) %>%
group_by(year, party) %>%
summarise(candidatevotes = sum(candidatevotes)) %>%
ungroup()
plot_ly(usa_elections, type = "scatter", mode = "lines",
x = ~year, y = ~candidatevotes, color = ~party)