dados = read_csv(
here::here("data/participation-per-country.csv"),
col_types = cols(
.default = col_double(),
site = col_character(),
country = col_character(),
geo = col_character(),
four_regions = col_character(),
eight_regions = col_character(),
six_regions = col_character(),
`World bank income group 2017` = col_character()
)
) %>%
filter(usuarios > 200)
glimpse(dados)
## Rows: 121
## Columns: 21
## $ site <chr> "StackOverflow", "StackOverflow", "Stac…
## $ country <chr> "Argentina", "Australia", "Austria", "B…
## $ PDI <dbl> 49, 36, 11, 80, 65, 69, 70, 39, 63, 80,…
## $ IDV <dbl> 46, 90, 55, 20, 75, 38, 30, 80, 23, 20,…
## $ MAS <dbl> 56, 61, 79, 55, 54, 49, 40, 52, 28, 66,…
## $ UAI <dbl> 86, 51, 70, 60, 94, 76, 85, 48, 86, 30,…
## $ usuarios <dbl> 2798, 12313, 2518, 2558, 4275, 10717, 1…
## $ responderam_prop <dbl> 0.5357398, 0.6133355, 0.6310564, 0.3928…
## $ perguntaram_prop <dbl> 0.5210865, 0.5897832, 0.5933280, 0.4757…
## $ editaram_prop <dbl> 0.09256612, 0.14699911, 0.14932486, 0.0…
## $ comentaram_prop <dbl> 0.25339528, 0.33395598, 0.35027800, 0.1…
## $ GNI <dbl> NA, 59570, 48160, 840, 44990, 11630, 68…
## $ Internet <dbl> 51.0, 79.5, 79.8, 5.0, 78.0, 45.0, 51.0…
## $ EPI <dbl> 59.02, NA, 63.21, NA, 61.21, 49.96, NA,…
## $ geo <chr> "arg", "aus", "aut", "bgd", "bel", "bra…
## $ four_regions <chr> "americas", "asia", "europe", "asia", "…
## $ eight_regions <chr> "america_south", "east_asia_pacific", "…
## $ six_regions <chr> "america", "east_asia_pacific", "europe…
## $ Latitude <dbl> -34.00000, -25.00000, 47.33333, 24.0000…
## $ Longitude <dbl> -64.00000, 135.00000, 13.33333, 90.0000…
## $ `World bank income group 2017` <chr> "Upper middle income", "High income", "…
Estamos interessados na relação entre quanto as pessoas de diferentes
países comentam em questões dos outros. A proporção das pessoas do país
que comentou nas questões de outros está medido na variável
comentaram_prop.
Considerando essa variável, queremos examinar a relação entre ela e o
quão hierárquicas são as relações em um país (PDI).
Queremos também levar em conta o quanto as pessoas daquele país têm
acesso à Internet (Internet) e qual o tamanho da base de
dados que detectamos daquele país (usuarios).
Faça uma visualização que usa os princípios de eficácia no projeto de visualizações para facilitar as comparações que você acha que são as mais importantes para entendermos esse contexto.
dados %>%
ggplot(aes(comentaram_prop, PDI, size=usuarios, color=Internet), na.rm = TRUE) +
geom_point() +
scale_color_viridis(discrete = FALSE, option = "mako", direction = -1) +
labs(
title = "PDI vs proporção de comentários incl. base de usuários e internet",
subtitle = "Visualização eficaz",
y = "PDI",
x = "Proporção de comentários",
color = "Proporção de internet",
size = "Tamanho da base de usuários"
) +
theme_bw()
Com essa visualização, podemos ver claramente que maior proporção de internet está mais relacionada com proporção de comentários mais alta e menor valor de PDI. Por outro lado, menos PDI e menos proporção de comentários tem relação a menor proporção de internet. Podemos perceber que a maioria das bases de usuários são abaixo de 50000, e não dá pra visualizar nenhum tipo de relação entre base de usuário e PDI/comentários.
Em seguida, faça 5 visualizações que usem as mesmas variáveis e também pontos, mas que sejam menos eficazes que a que você escolheu acima.
dados %>%
ggplot(aes(comentaram_prop, PDI, size=usuarios, color=Internet), na.rm = TRUE) +
geom_point() +
scale_color_gradientn(colours=rainbow(5)) +
labs(
title = "PDI vs proporção de comentários incl. base de usuário e internet",
subtitle = "Visualização menos eficaz 1: muitos tons",
y = "PDI",
x = "Proporção de comentários",
color = "Proporção de internet",
size = "Tamanho da base de usuário"
) +
theme_bw()
A visualização menos eficaz 1 dificulta visualizar a relação entre internet e PDI/Comentários.
dados %>%
ggplot(aes(comentaram_prop, PDI, size=Internet, color=usuarios)) +
geom_point(na.rm = TRUE) +
scale_color_viridis(discrete = FALSE, option = "mako", direction = -1) +
labs(
title = "PDI vs proporção de comentários incl. base de usuário e internet",
subtitle = "Visualização menos eficaz 2: base de usuário como cor e internet como tamanho",
y = "PDI",
x = "Proporção de comentários",
size = "Proporção de internet",
color = "Tamanho da base de usuário"
) +
theme_bw()
Trocando cor para base de usuário e tamanho pra proporção de internet, perdemos a noção da relação entre internet e PDI/comentários a troco de apenas saber que base de usuário não tem relação com PDI/Comentários.
dados %>%
ggplot(aes(PDI, comentaram_prop, size=usuarios, color=Internet)) +
geom_point(na.rm = TRUE) +
scale_color_viridis(discrete = FALSE, option = "mako", direction = -1) +
labs(
title = "PDI vs proporção de comentários incl. base de usuário e internet",
subtitle = "Visualização menos eficaz 3: PDI no eixo x e comentários no eixo y",
x = "PDI",
y = "Proporção de comentários",
color = "Proporção de internet",
size = "Tamanho da base de usuário"
) +
theme_bw()
Trocando apenas os eixos, pode dificultar um pouco para enxergar a relação entre internet e PDI/comentários, mas ainda fica visível, maiores valores de proporção do lado esquerdo e menores do lado direito.
dados %>%
ggplot(aes(comentaram_prop, PDI, linewidth=usuarios, color=Internet), na.rm = TRUE) +
geom_tile() +
scale_color_viridis(discrete = FALSE, option = "mako", direction = -1) +
labs(
title = "PDI vs proporção de comentários incl. base de usuário e internet",
subtitle = "Visualização menos eficaz 4: usando tiles",
y = "PDI",
x = "Proporção de comentários",
color = "Proporção de internet",
linewidth = "Tamanho da base de usuário"
) +
theme_bw()
Trocando pontos por tiles, dificulta para enxergar a relação entre PDI e comentários.
dados%>%
ggplot(aes(comentaram_prop, PDI, size=usuarios, color=Internet), na.rm = TRUE) +
geom_point() +
scale_color_gradient2(low = "#0000FF", mid = "#FFFFFF", high = "#FF0000", midpoint = 50, limits = c(0, 100)) +
labs(
title = "PDI vs proporção de comentários incl. base de usuário e internet",
subtitle = "Visualização menos eficaz 5: escala de cores divergente",
y = "PDI",
x = "Proporção de comentários",
color = "Proporção de internet",
size = "Tamanho da base de usuário"
) +
theme_bw()
E, usando uma escala de cores divergente pode dar margem de interpretação errada para internet.
Inclua o continente dos países (six_regions) na
visualização.
dados %>%
filter(!is.na(six_regions)) %>%
ggplot(aes(comentaram_prop, PDI)) +
geom_point(aes(size = Internet, color = six_regions, alpha=usuarios), na.rm = TRUE) +
scale_size(range = c(1, 10)) +
scale_alpha(range = c(0.2, 1)) +
labs(
title = "PDI vs proporção de comentários",
subtitle = "Incluindo base de usuário, internet e continente",
y = "PDI",
x = "Proporção de comentários",
color = "Continente (região)",
size = "Proporção de internet",
alpha = "Tamanho da base de usuário (transparência)"
) +
theme_minimal()
Incluindo a região do país, vemos que a maioria dos países são da região europe_central_asia, estes tendo proporção de comentários variando entre 0.2 e 0.35. As regiões com menores proporções de comentários são east_asia_pacific e sub_saharan_africa. Analisando o PDI por região, percebemos que uma propoção maior de países da europe_central_asia com baixo PDI, embora também tenha uma certa quantidade com PDI médio a alto.