library(tidyverse)
library(palmerpenguins)HDS 3.3-3.4
Begin by loading the tidyverse and palmerpenguins packages in the code chunk above and adding your name as the author.
Visualizing the penguins Data
Two Categorical Variables
Let’s start by making a stacked bar chart of the island variable by sex. Fill in the missing code:
# Insert your code here to make the stacked bar chart
ggplot(data = penguins, mapping = aes(x = island, fill = sex)) +
geom_bar() +
labs(
x = "Island",
y = "Number of Penguins",
fill = "Sex",
title = "Distribution of Penguin Species by Island and Sex"
)Modify the previous bar chart to make a side-by-side bar chart of the two variables:
ggplot(data = penguins, mapping = aes(x = island, fill = sex)) +
geom_bar(position = "dodge") +
labs(
x = "Island",
y = "Number of Penguins",
fill = "Sex",
title = "Distribution of Penguin Species by Island and Sex"
)One Quantitative/One Categorical Variables
Now let’s make side-by-side boxplots of body_mass_g by sex. Put the quantitative variable on the y-axis and the categorical variable on the x-axis.
ggplot(data = penguins, mapping = aes(x = sex, y = body_mass_g)) +
geom_boxplot() +
labs(
x = "Sex",
y = "Body Mass (g)",
title = "Distribution of Body Mass by Sex"
)Warning: Removed 2 rows containing non-finite outside the scale range
(`stat_boxplot()`).
One Quantitative/Two Categorical Variables
Is there a difference in body_mass_g between sexes? Use facet_wrap() to modify the previous plot to compare the sexes separately for each species. Is the sex difference more or less clear now?
ggplot(data = penguins, mapping = aes(x = sex, y = body_mass_g)) +
geom_boxplot() +
facet_wrap(~ species) +
labs(
x = "Sex",
y = "Body Mass",
title = "Distribution of Penguin Body Mass by Species and Sex"
)Warning: Removed 2 rows containing non-finite outside the scale range
(`stat_boxplot()`).
Both of these graphs show a difference between the body masses of male and female penguins.
Two Quantitative Variables
Is there a relationship between flipper_length_mm and set the body_mass_g? Make a scatterplot of the two variables:
ggplot(data = penguins, mapping = aes(x = flipper_length_mm, y = body_mass_g)) +
geom_point() +
labs(
title = "Body Mass vs. Flipper Length",
x = "Flipper Length (mm)",
y = "Body Mass (g)"
)Warning: Removed 2 rows containing missing values or values outside the scale range
(`geom_point()`).
Now add species to the plot by using different colored points:
ggplot(data = penguins, mapping = aes(x = flipper_length_mm, y = body_mass_g, color = species)) +
geom_point() +
labs(
title = "Body Mass vs. Flipper Length by Species",
x = "Flipper Length (mm)",
y = "Body Mass (g)",
color = "Species"
)Warning: Removed 2 rows containing missing values or values outside the scale range
(`geom_point()`).
Now make the size of the points proportional to bill_depth_mm.
ggplot(data = penguins, mapping = aes(x = flipper_length_mm, y = body_mass_g, color = species, size = bill_depth_mm)) +
geom_point() +
labs(
title = "Body Mass vs. Flipper Length by Species and Bill Depth",
x = "Flipper Length (mm)",
y = "Body Mass (g)",
color = "Species",
size = "Bill Depth (mm)"
)Warning: Removed 2 rows containing missing values or values outside the scale range
(`geom_point()`).
What additional insight do you get from this?
Gentoo penguins have longer flippers, higher body mass, but lower bill depth.
Chinstrap penguins have short-medium flipper lengths, moderate-large bill depth, and low-average body mass.
Adelie penguins have shorter flippers, large bill depths, and low body mass.