Este é o data frame escolhido para desenvolver a atividade, carregamos e fizemos a visualização dos dados nos seus atributos como linhas e os objetos como colunas.
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).
Criamos um gráfico de dispersão para mostrar a relação dos dois paragráfos anteriores.
dados %>%
arrange(IDV) %>%
ggplot(aes(x = IDV, y = responderam_prop)) +
geom_point(size = 3, color = "blue") +
labs(x = "IDV", y = "Proporção de Respondentes") +
theme_minimal() +
theme(axis.text = element_text(size = 12),
axis.title = element_text(size = 14, face = "bold"),
plot.title = element_text(size = 16, face = "bold"))
Nesta versão, adicionei algumas alterações para tornar o gráfico mais legível:
Aumentei o tamanho dos pontos para size = 3 e defini a cor como azul (color = “blue”), dessa forma, os pontos serão mais visíveis no gráfico.
Também aumentei o tamanho das legendas dos eixos x e y, desse jeito torna os textos mais legíveis para nosso público alvo.
Depois aumentei o tamanho do título do gráfico para size = 16, para ajudar a chamar a atenção para o propósito da visualização.
Mantive o tema minimalista para manter a simplicidade do gráfico, mas com as alterações de tamanho de texto para melhorar a legibilidade.
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.
ggplot(dados, aes(x = IDV, y = comentaram_prop, fill = PDI)) +
geom_bar(stat = "identity", position = "dodge") +
labs(x = "Países", y = "Proporção que Comentou",
title = "Proporção de Comentários por País e Nível de Hierarquia",
fill = "Nível de Hierarquia (PDI)") +
scale_fill_gradient(low = "lightblue", high = "darkblue") +
theme_minimal() +
theme(plot.title = element_text(size = 16, face = "bold"),
axis.title = element_text(size = 14, face = "bold"),
legend.title = element_text(size = 12, face = "bold"),
legend.text = element_text(size = 10))
Estamos criando um gráfico de barras empilhadas para representar a proporção de comentários por país e nível de hierarquia.
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.
1ª Opção
ggplot(dados, aes(x = IDV, y = comentaram_prop, color = usuarios)) +
geom_point(size = 3) +
labs(x = "Países", y = "Proporção que Comentou",
title = "Proporção de Comentários por País",
subtitle = "Cor dos pontos: Número de Usuários") +
scale_color_gradient(low = "lightblue", high = "darkblue") +
theme_minimal()
Esta primeira opção neste gráfico, a escala dos eixos não está ajustada corretamente, resultando em uma representação distorcida das proporções de comentários.
2ª Opção
ggplot(dados, aes(x = IDV, y = comentaram_prop, fill = PDI)) +
geom_bar(stat = "identity") +
labs(x = "Países", y = "Proporção que Comentou",
title = "Proporção de Comentários por País e Nível de Hierarquia",
fill = "Nível de Hierarquia (PDI)") +
theme_minimal()
Já neste gráfico, as barras são empilhadas, dificultando a comparação das proporções entre os países e dificultando a percepção das diferenças entre as categorias.
3ª Opção
ggplot(dados, aes(x = comentaram_prop, y = IDV, fill = PDI)) +
geom_bar(stat = "identity", orientation = "h") +
labs(x = "Proporção que Comentou", y = "Países",
title = "Proporção de Comentários por País e Nível de Hierarquia",
fill = "Nível de Hierarquia (PDI)") +
theme_minimal()
No nosso quarto gráfico, as barras horizontais não estão ordenadas de forma lógica, tornando difícil a comparação das proporções entre os países.
4ª Opção
ggplot(dados, aes(x = comentaram_prop, y = IDV, color = PDI)) +
geom_line(size = 1) +
labs(x = "Proporção que Comentou", y = "Países",
title = "Proporção de Comentários por País e Nível de Hierarquia",
color = "Nível de Hierarquia (PDI)") +
theme_minimal()
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.
Neste gráfico, os eixos estão invertidos, dificultando a compreensão da relação entre as variáveis e prejudicando a interpretação dos dados.
5ª Opção
ggplot(dados, aes(x = usuarios, y = comentaram_prop, color = PDI)) +
geom_point(size = 3) +
labs(x = "Número de Usuários", y = "Proporção que Comentou",
title = "Proporção de Comentários por Número de Usuários e Nível de Hierarquia",
color = "Nível de Hierarquia (PDI)") +
theme_minimal()
Inclua o continente dos países (six_regions) na
visualização.
ggplot(dados, aes(x = IDV, y = comentaram_prop, fill = PDI, group = six_regions)) +
geom_bar(stat = "identity", position = position_dodge(), width = 0.7) +
labs(x = "Países", y = "Proporção que Comentou",
title = "Proporção de Comentários por País, Nível de Hierarquia e Continente",
fill = "Nível de Hierarquia (PDI)") +
scale_fill_gradient(low = "lightblue", high = "darkblue") +
theme_minimal() +
theme(plot.title = element_text(size = 16, face = "bold"),
axis.title = element_text(size = 14, face = "bold"),
legend.title = element_text(size = 12, face = "bold"),
legend.text = element_text(size = 10)) +
guides(fill = guide_legend(title.position = "top", nrow = 1))
Nesta versão, adicionamos “six_regions” para agrupar as barras por continente. Fizemos uso da função position_dodge() para separar as barras e facilitar a comparação entre países dentro de cada continente.
Esta visualização nos mostra as proporções de comentários por país, nível de hierarquia e continente, facilitando a comparação entre os países dentro de cada continente. As barras são agrupadas de acordo com o continente, permitindo uma análise mais precisa dos dados.