From 1ffbbf90b50a1e0f53c8267be4085ee2f200dc39 Mon Sep 17 00:00:00 2001 From: Mine Cetinkaya-Rundel Date: Sun, 4 Dec 2022 13:05:38 -0500 Subject: [PATCH] New visualize part (#1115) --- DESCRIPTION | 1 + EDA.qmd | 289 +--- _quarto.yml | 8 +- communicate-plots.qmd | 743 ---------- communicate.qmd | 2 +- communication.qmd | 1154 ++++++++++++++++ data-visualize.qmd | 1830 +++++++++---------------- diagrams/data-science.graffle | Bin 112687 -> 114570 bytes diagrams/data-science/communicate.png | Bin 49182 -> 49428 bytes diagrams/data-science/visualize.png | Bin 0 -> 47266 bytes images/visualization-grammar-1.png | Bin 164118 -> 0 bytes images/visualization-grammar-2.png | Bin 168855 -> 0 bytes images/visualization-grammar-3.png | Bin 235902 -> 0 bytes images/visualization-grammar.png | Bin 0 -> 189361 bytes layers.qmd | 1057 ++++++++++++++ missing-values.qmd | 2 +- quarto.qmd | 31 +- transform.qmd | 7 +- visualize.qmd | 41 + whole-game.qmd | 2 - workflow-basics.qmd | 16 + workflow-pipes.qmd | 17 +- 22 files changed, 3030 insertions(+), 2170 deletions(-) delete mode 100644 communicate-plots.qmd create mode 100644 communication.qmd create mode 100644 diagrams/data-science/visualize.png delete mode 100644 images/visualization-grammar-1.png delete mode 100644 images/visualization-grammar-2.png delete mode 100644 images/visualization-grammar-3.png create mode 100644 images/visualization-grammar.png create mode 100644 layers.qmd create mode 100644 visualize.qmd diff --git a/DESCRIPTION b/DESCRIPTION index 8a68c1c..747f378 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -17,6 +17,7 @@ Imports: gapminder, ggplot2, ggrepel, + ggridges, hexbin, janitor, jsonlite, diff --git a/EDA.qmd b/EDA.qmd index ada8a91..b0fb536 100644 --- a/EDA.qmd +++ b/EDA.qmd @@ -4,7 +4,7 @@ #| results: "asis" #| echo: false source("_common.R") -status("polishing") +status("complete") ``` ## Introduction @@ -52,7 +52,7 @@ When you ask a question, the question focuses your attention on a specific part EDA is fundamentally a creative process. And like most creative processes, the key to asking *quality* questions is to generate a large *quantity* of questions. -It is difficult to ask revealing questions at the start of your analysis because you do not know what insights are contained in your dataset. +It is difficult to ask revealing questions at the start of your analysis because you do not know what insights can be gleaned from your dataset. On the other hand, each new question that you ask will expose you to a new aspect of your data and increase your chance of making a discovery. You can quickly drill down into the most interesting parts of your data---and develop a set of thought-provoking questions---if you follow up each question with a new question based on what you find. @@ -91,37 +91,10 @@ This is true even if you measure quantities that are constant, like the speed of Each of your measurements will include a small amount of error that varies from measurement to measurement. Variables can also vary if you measure across different subjects (e.g. the eye colors of different people) or different times (e.g. the energy levels of an electron at different moments). Every variable has its own pattern of variation, which can reveal interesting information about how that variable varies between measurements on the same observation as well as across observations. -The best way to understand that pattern is to visualize the distribution of the variable's values. +The best way to understand that pattern is to visualize the distribution of the variable's values, which you've learned about in @sec-data-visualisation. -### Visualizing distributions - -How you visualize the distribution of a variable will depend on whether the variable is categorical or continuous. -A variable is **categorical** if it can only take one of a small set of values. -In R, categorical variables are usually saved as factors or character vectors. -To examine the distribution of a categorical variable, you can use a bar chart: - -```{r} -#| fig-alt: > -#| A bar chart of cuts of diamonds. The cuts are presented in increasing -#| order of frequency: Fair (less than 2500), Good (approximately 5000), -#| Very Good (apprximately 12500), Premium, (approximately 14000), and Ideal -#| (approximately 21500). - -ggplot(data = diamonds, mapping = aes(x = cut)) + - geom_bar() -``` - -The height of the bars displays how many observations occurred with each x value. -You can compute these values manually with `count()`: - -```{r} -diamonds |> - count(cut) -``` - -A variable is **continuous** if it can take any of an infinite set of ordered values. -Numbers and date-times are two examples of continuous variables. -To examine the distribution of a continuous variable, you can use a histogram: +We'll start our exploration by visualizing the distribution of weights (`carat`) of \~54,000 diamonds from the `diamonds` dataset. +Since `carat` is a numerical variable, we can use a histogram: ```{r} #| fig-alt: > @@ -132,62 +105,10 @@ To examine the distribution of a continuous variable, you can use a histogram: #| at 1, and much fewer, approximately 5000 diamonds in the bin centered at #| 1.5. Beyond this, there's a trailing tail. -ggplot(data = diamonds, mapping = aes(x = carat)) + +ggplot(diamonds, aes(x = carat)) + geom_histogram(binwidth = 0.5) ``` -You can compute this by hand by combining `count()` and `cut_width()`: - -```{r} -diamonds |> - count(cut_width(carat, 0.5)) -``` - -A histogram divides the x-axis into equally spaced bins and then uses the height of a bar to display the number of observations that fall in each bin. -Note that even though it's not possible to have a `carat` value that is smaller than 0 (since weights of diamonds, by definition, are positive values), the bins start at a negative value (-0.25) in order to create bins of equal width across the range of the data with the center of the first bin at 0. -This behavior is also apparent in the histogram above, where the first bar ranges from -0.25 to 0.25. -The tallest bar shows that almost 30,000 observations have a `carat` value between 0.25 and 0.75, which are the left and right edges of the bar centered at 0.5. - -You can set the width of the intervals in a histogram with the `binwidth` argument, which is measured in the units of the `x` variable. -You should always explore a variety of binwidths when working with histograms, as different binwidths can reveal different patterns. -For example, here is how the graph above looks when we zoom into just the diamonds with a size of less than three carats and choose a smaller binwidth. - -```{r} -#| fig-alt: > -#| A histogram of carats of diamonds, with the x-axis ranging from 0 to 3 and -#| the y-axis ranging from 0 to 10000. The binwidth is quite narrow (0.1), -#| resulting in many bars. The distribution is right skewed but there are lots -#| of ups and downs in the heights of the bins, creating a jagged outline. - -smaller <- diamonds |> - filter(carat < 3) - -ggplot(data = smaller, mapping = aes(x = carat)) + - geom_histogram(binwidth = 0.1) -``` - -If you wish to overlay multiple histograms in the same plot, we recommend using `geom_freqpoly()` instead of `geom_histogram()`. -`geom_freqpoly()` performs the same calculation as `geom_histogram()`, but instead of displaying the counts with bars, uses lines instead. -It's much easier to understand overlapping lines than bars. - -```{r} -#| fig-alt: > -#| A frequency polygon of carats of diamonds where each cut of carat (Fair, -#| Good, Very Good, Premium, and Ideal) is represented with a different color -#| line. The x-axis ranges from 0 to 3 and the y-axis ranges from 0 to almost -#| 6000. Ideal diamonds have a much higher peak than the others around 0.25 -#| carats. All cuts of diamonds have right skewed distributions with local -#| peaks at 1 carat and 2 carats. As the cut level increases (from Fair to -#| Ideal), so does the number of diamonds that fall into that category. - -ggplot(data = smaller, mapping = aes(x = carat, color = cut)) + - geom_freqpoly(binwidth = 0.1, size = 0.75) -``` - -We've also customized the thickness of the lines using the `size` argument in order to make them stand out a bit more against the background. - -There are a few challenges with this type of plot, which we will come back to in @sec-cat-cont on visualizing a categorical and a continuous variable. - Now that you can visualize variation, what should you look for in your plots? And what type of follow-up questions should you ask? We've put together a list below of the most useful types of information that you will find in your graphs, along with some follow-up questions for each type of information. @@ -223,7 +144,10 @@ As an example, the histogram below suggests several interesting questions: #| is right skewed, with many peaks followed by bars in decreasing heights, #| until a sharp increase at the next peak. -ggplot(data = smaller, mapping = aes(x = carat)) + +smaller <- diamonds |> + filter(carat < 3) + +ggplot(smaller, aes(x = carat)) + geom_histogram(binwidth = 0.01) ``` @@ -247,7 +171,7 @@ Eruption times appear to be clustered into two groups: there are short eruptions #| and the y-axis ranges from 0 to roughly 40. The distribution is bimodal #| with peaks around 1.75 and 4.5. -ggplot(data = faithful, mapping = aes(x = eruptions)) + +ggplot(faithful, aes(x = eruptions)) + geom_histogram(binwidth = 0.25) ``` @@ -268,7 +192,7 @@ The only evidence of outliers is the unusually wide limits on the x-axis. #| y-axis ranges from 0 to 12000. There is a peak around 5, and the data #| appear to be completely clustered around the peak. -ggplot(data = diamonds, mapping = aes(x = y)) + +ggplot(diamonds, aes(x = y)) + geom_histogram(binwidth = 0.5) ``` @@ -283,7 +207,7 @@ To make it easy to see the unusual values, we need to zoom to small values of th #| there is one bin at 0 with a height of about 8, one a little over 30 with #| a height of 1 and another one a little below 60 with a height of 1. -ggplot(data = diamonds, mapping = aes(x = y)) + +ggplot(diamonds, aes(x = y)) + geom_histogram(binwidth = 0.5) + coord_cartesian(ylim = c(0, 50)) ``` @@ -341,7 +265,7 @@ You'll need to figure out what caused them (e.g. a data entry error) and disclos What happens if you leave `binwidth` unset? What happens if you try and zoom so only half a bar shows? -## Missing values {#sec-missing-values-eda} +## Unusual values {#sec-missing-values-eda} If you've encountered unusual values in your dataset, and simply want to move on to the rest of your analysis, you have two options. @@ -371,8 +295,8 @@ The first argument `test` should be a logical vector. The result will contain the value of the second argument, `yes`, when `test` is `TRUE`, and the value of the third argument, `no`, when it is false. Alternatively to `if_else()`, use `case_when()`. `case_when()` is particularly useful inside mutate when you want to create a new variable that relies on a complex combination of existing variables or would otherwise require multiple `if_else()` statements nested inside one another. +You will learn more about logical vectors in @sec-logicals. -Like R, ggplot2 subscribes to the philosophy that missing values should never silently go missing. It's not obvious where you should plot missing values, so ggplot2 doesn't include them in the plot, but it does warn that they've been removed: ```{r} @@ -383,7 +307,7 @@ It's not obvious where you should plot missing values, so ggplot2 doesn't includ #| has length greater than 3. The one outlier has a length of 0 and a width #| of about 6.5. -ggplot(data = diamonds2, mapping = aes(x = x, y = y)) + +ggplot(diamonds2, aes(x = x, y = y)) + geom_point() ``` @@ -392,7 +316,7 @@ To suppress that warning, set `na.rm = TRUE`: ```{r} #| eval: false -ggplot(data = diamonds2, mapping = aes(x = x, y = y)) + +ggplot(diamonds2, aes(x = x, y = y)) + geom_point(na.rm = TRUE) ``` @@ -417,8 +341,8 @@ nycflights13::flights |> sched_min = sched_dep_time %% 100, sched_dep_time = sched_hour + (sched_min / 60) ) |> - ggplot(mapping = aes(sched_dep_time)) + - geom_freqpoly(mapping = aes(color = cancelled), binwidth = 1/4) + ggplot(aes(sched_dep_time)) + + geom_freqpoly(aes(color = cancelled), binwidth = 1/4) ``` However this plot isn't great because there are many more non-cancelled flights than cancelled flights. @@ -437,14 +361,10 @@ In the next section we'll explore some techniques for improving this comparison. If variation describes the behavior *within* a variable, covariation describes the behavior *between* variables. **Covariation** is the tendency for the values of two or more variables to vary together in a related way. The best way to spot covariation is to visualize the relationship between two or more variables. -How you do that depends again on the types of variables involved. -### A categorical and continuous variable {#sec-cat-cont} +### A categorical and a numerical variable {#sec-cat-num} -It's common to want to explore the distribution of a continuous variable broken down by a categorical variable, as in the previous frequency polygon. -The default appearance of `geom_freqpoly()` is not that useful for that sort of comparison because the height is given by the count. -That means if one of the groups is much smaller than the others, it's hard to see the differences in the shapes of their distributions. -For example, let's explore how the price of a diamond varies with its quality (measured by `cut`): +For example, let's explore how the price of a diamond varies with its quality (measured by `cut`) using `geom_freqpoly()`: ```{r} #| fig-alt: > @@ -455,11 +375,11 @@ For example, let's explore how the price of a diamond varies with its quality (m #| distributions of prices of diamonds. One notable feature is that #| Ideal diamonds have the highest peak around 1500. -ggplot(data = diamonds, mapping = aes(x = price)) + - geom_freqpoly(mapping = aes(color = cut), binwidth = 500, size = 0.75) +ggplot(diamonds, aes(x = price)) + + geom_freqpoly(aes(color = cut), binwidth = 500, size = 0.75) ``` -It's hard to see the difference in distribution because the overall counts differ so much: +The default appearance of `geom_freqpoly()` is not that useful for that sort of comparison because the height is given by the count and the overall counts of `cut` in differ so much, making it hard to see the differences in the shapes of their distributions: ```{r} #| fig-alt: > @@ -467,7 +387,7 @@ It's hard to see the difference in distribution because the overall counts diffe #| frenquencies of various cuts. Fair diamonds have the lowest frequency, #| then Good, then Very Good, then Premium, and then Ideal. -ggplot(data = diamonds, mapping = aes(x = cut)) + +ggplot(diamonds, aes(x = cut)) + geom_bar() ``` @@ -483,8 +403,8 @@ Instead of displaying count, we'll display the **density**, which is the count s #| diamonds. One notable feature is that all but Fair diamonds have high peaks #| around a price of 1500 and Fair diamonds have a higher mean than others. -ggplot(data = diamonds, mapping = aes(x = price, y = after_stat(density))) + - geom_freqpoly(mapping = aes(color = cut), binwidth = 500, size = 0.75) +ggplot(diamonds, aes(x = price, y = after_stat(density))) + + geom_freqpoly(aes(color = cut), binwidth = 500, size = 0.75) ``` Note that we're mapping the density the `y`, but since `density` is not a variable in the `diamonds` dataset, we need to first calculate it. @@ -493,29 +413,7 @@ We use the `after_stat()` function to do so. There's something rather surprising about this plot - it appears that fair diamonds (the lowest quality) have the highest average price! But maybe that's because frequency polygons are a little hard to interpret - there's a lot going on in this plot. -Another alternative to display the distribution of a continuous variable broken down by a categorical variable is the boxplot. -A **boxplot** is a type of visual shorthand for a distribution of values that is popular among statisticians. -Each boxplot consists of: - -- A box that stretches from the 25th percentile of the distribution to the 75th percentile, a distance known as the interquartile range (IQR). - In the middle of the box is a line that displays the median, i.e. 50th percentile, of the distribution. - These three lines give you a sense of the spread of the distribution and whether or not the distribution is symmetric about the median or skewed to one side. - -- Visual points that display observations that fall more than 1.5 times the IQR from either edge of the box. - These outlying points are unusual so are plotted individually. - -- A line (or whisker) that extends from each end of the box and goes to the farthest non-outlier point in the distribution. - -```{r} -#| echo: false -#| fig-alt: > -#| A diagram depicting how a boxplot is created following the steps outlined -#| above. - -knitr::include_graphics("images/EDA-boxplot.png") -``` - -Let's take a look at the distribution of price by cut using `geom_boxplot()`: +A visually simpler plot for exploring this relationship is using side-by-side boxplots. ```{r} #| fig-height: 3 @@ -525,7 +423,7 @@ Let's take a look at the distribution of price by cut using `geom_boxplot()`: #| Ideal). The medians are close to each other, with the median for Ideal #| diamonds lowest and that for Fair highest. -ggplot(data = diamonds, mapping = aes(x = cut, y = price)) + +ggplot(diamonds, aes(x = cut, y = price)) + geom_boxplot() ``` @@ -535,7 +433,7 @@ In the exercises, you'll be challenged to figure out why. `cut` is an ordered factor: fair is worse than good, which is worse than very good and so on. Many categorical variables don't have such an intrinsic order, so you might want to reorder them to make a more informative display. -One way to do that is with the `reorder()` function. +One way to do that is with the `fct_reorder()` function. For example, take the `class` variable in the `mpg` dataset. You might be interested to know how highway mileage varies across classes: @@ -546,7 +444,7 @@ You might be interested to know how highway mileage varies across classes: #| on the x-axis (2seaters, compact, midsize, minivan, pickup, subcompact, #| and suv). -ggplot(data = mpg, mapping = aes(x = class, y = hwy)) + +ggplot(mpg, aes(x = class, y = hwy)) + geom_boxplot() ``` @@ -559,8 +457,8 @@ To make the trend easier to see, we can reorder `class` based on the median valu #| on the x-axis and ordered by increasing median highway mileage (pickup, #| suv, minivan, 2seater, subcompact, compact, and midsize). -ggplot(data = mpg, - mapping = aes(x = fct_reorder(class, hwy, median), y = hwy)) + +ggplot(mpg, + aes(x = fct_reorder(class, hwy, median), y = hwy)) + geom_boxplot() ``` @@ -572,8 +470,8 @@ You can do that by exchanging the x and y aesthetic mappings. #| Side-by-side boxplots of highway mileages of cars by class. Classes are #| on the y-axis and ordered by increasing median highway mileage. -ggplot(data = mpg, - mapping = aes(y = fct_reorder(class, hwy, median), x = hwy)) + +ggplot(mpg, + aes(y = fct_reorder(class, hwy, median), x = hwy)) + geom_boxplot() ``` @@ -614,42 +512,13 @@ One way to do that is to rely on the built-in `geom_count()`: #| the number of observations for that combination. The legend indicates #| that these sizes range between 1000 and 4000. -ggplot(data = diamonds, mapping = aes(x = cut, y = color)) + +ggplot(diamonds, aes(x = cut, y = color)) + geom_count() ``` The size of each circle in the plot displays how many observations occurred at each combination of values. Covariation will appear as a strong correlation between specific x values and specific y values. -A more commonly used way of representing the covariation between two categorical variables is using a segmented bar chart. -In creating this bar chart, we map the variable we want to divide the data into first to the `x` aesthetic and the variable we then further want to divide each group into to the `fill` aesthetic. - -```{r} -#| fig-alt: > -#| A bar chart of cuts of diamonds, segmented by color. The number of diamonds -#| for each level of cut increases from Fair to Ideal and the heights -#| of the segments within each bar represent the number of diamonds that fall -#| within each color/cut combination. There appear to be some of each color of -#| diamonds within each level of cut of diamonds. - -ggplot(data = diamonds, mapping = aes(x = cut, fill = color)) + - geom_bar() -``` - -However, in order to get a better sense of the relationship between these two variables, you should compare proportions instead of counts across groups. - -```{r} -#| fig-alt: > -#| A bar chart of cuts of diamonds, segmented by color. The heights of each -#| of the bars representing each cut of diamond are the same, 1. The heights -#| of the segments within each bar represent the proportion of diamonds that -#| fall within each color/cut combination. The proportions don't appear to be -#| very different across the levels of cut. - -ggplot(data = diamonds, mapping = aes(x = cut, fill = color)) + - geom_bar(position = "fill") -``` - Another approach for exploring the relationship between these variables is computing the counts with dplyr: ```{r} @@ -669,8 +538,8 @@ Then visualize with `geom_tile()` and the fill aesthetic: diamonds |> count(color, cut) |> - ggplot(mapping = aes(x = color, y = cut)) + - geom_tile(mapping = aes(fill = n)) + ggplot(aes(x = color, y = cut)) + + geom_tile(aes(fill = n)) ``` If the categorical variables are unordered, you might want to use the seriation package to simultaneously reorder the rows and columns in order to more clearly reveal interesting patterns. @@ -689,9 +558,9 @@ For larger plots, you might want to try the heatmaply package, which creates int 4. Why is it slightly better to use `aes(x = color, y = cut)` rather than `aes(x = cut, y = color)` in the example above? -### Two continuous variables +### Two numerical variables -You've already seen one great way to visualize the covariation between two continuous variables: draw a scatterplot with `geom_point()`. +You've already seen one great way to visualize the covariation between two numerical variables: draw a scatterplot with `geom_point()`. You can see covariation as a pattern in the points. For example, you can see an exponential relationship between the carat size and price of a diamond. @@ -701,7 +570,7 @@ For example, you can see an exponential relationship between the carat size and #| A scatterplot of price vs. carat. The relationship is positive, somewhat #| strong, and exponential. -ggplot(data = diamonds, mapping = aes(x = carat, y = price)) + +ggplot(diamonds, aes(x = carat, y = price)) + geom_point() ``` @@ -716,7 +585,7 @@ You've already seen one way to fix the problem: using the `alpha` aesthetic to a #| the number of points is higher than other areas, The most obvious clusters #| are for diamonds with 1, 1.5, and 2 carats. -ggplot(data = diamonds, mapping = aes(x = carat, y = price)) + +ggplot(diamonds, aes(x = carat, y = price)) + geom_point(alpha = 1 / 100) ``` @@ -738,11 +607,11 @@ You will need to install the hexbin package to use `geom_hex()`. #| plot of price vs. carat. Both plots show that the highest density of #| diamonds have low carats and low prices. -ggplot(data = smaller, mapping = aes(x = carat, y = price)) + +ggplot(smaller, aes(x = carat, y = price)) + geom_bin2d() # install.packages("hexbin") -ggplot(data = smaller, mapping = aes(x = carat, y = price)) + +ggplot(smaller, aes(x = carat, y = price)) + geom_hex() ``` @@ -760,8 +629,8 @@ For example, you could bin `carat` and then for each group, display a boxplot: #| left skewed distributions. Cheaper, smaller diamonds have outliers on the #| higher end, more expensive, bigger diamonds have outliers on the lower end. -ggplot(data = smaller, mapping = aes(x = carat, y = price)) + - geom_boxplot(mapping = aes(group = cut_width(carat, 0.1))) +ggplot(smaller, aes(x = carat, y = price)) + + geom_boxplot(aes(group = cut_width(carat, 0.1))) ``` `cut_width(x, width)`, as used above, divides `x` into bins of width `width`. @@ -778,8 +647,8 @@ That's the job of `cut_number()`: #| increases as well. Cheaper, smaller diamonds have outliers on the higher #| end, more expensive, bigger diamonds have outliers on the lower end. -ggplot(data = smaller, mapping = aes(x = carat, y = price)) + - geom_boxplot(mapping = aes(group = cut_number(carat, 20))) +ggplot(smaller, aes(x = carat, y = price)) + + geom_boxplot(aes(group = cut_number(carat, 20))) ``` #### Exercises @@ -805,7 +674,7 @@ ggplot(data = smaller, mapping = aes(x = carat, y = price)) + #| strong, linear relationship. There are a few unusual observations #| above and below the bulk of the data, more below it than above. - ggplot(data = diamonds, mapping = aes(x = x, y = y)) + + ggplot(diamonds, aes(x = x, y = y)) + geom_point() + coord_cartesian(xlim = c(4, 11), ylim = c(4, 11)) ``` @@ -839,7 +708,7 @@ The scatterplot also displays the two clusters that we noticed above. #| eruption times and short waiting times and one with long eruption times and #| long waiting times. -ggplot(data = faithful, mapping = aes(x = eruptions, y = waiting)) + +ggplot(faithful, aes(x = eruptions, y = waiting)) + geom_point() ``` @@ -880,7 +749,7 @@ diamonds_fit <- linear_reg() |> diamonds_aug <- augment(diamonds_fit, new_data = diamonds) |> mutate(.resid = exp(.resid)) -ggplot(data = diamonds_aug, mapping = aes(x = carat, y = .resid)) + +ggplot(diamonds_aug, aes(x = carat, y = .resid)) + geom_point() ``` @@ -893,66 +762,12 @@ Once you've removed the strong relationship between carat and price, you can see #| quite similar, between roughly 0.75 to 1.25. Each of the distributions of #| residuals is right skewed, with many outliers on the higher end. -ggplot(data = diamonds_aug, mapping = aes(x = cut, y = .resid)) + +ggplot(diamonds_aug, aes(x = cut, y = .resid)) + geom_boxplot() ``` We're not discussing modelling in this book because understanding what models are and how they work is easiest once you have tools of data wrangling and programming in hand. -## ggplot2 calls - -As we move on from these introductory chapters, we'll transition to a more concise expression of ggplot2 code. -So far we've been very explicit, which is helpful when you are learning: - -```{r} -#| eval: false -#| fig-alt: > -#| A frequency polygon plot of eruption times for the Old Faithful geyser. -#| The distribution of eruption times is binomodal with one mode around 1.75 -#| and the other around 4.5. - -ggplot(data = faithful, mapping = aes(x = eruptions)) + - geom_freqpoly(binwidth = 0.25) -``` - -Typically, the first one or two arguments to a function are so important that you should know them by heart. -The first two arguments to `ggplot()` are `data` and `mapping`, and the first two arguments to `aes()` are `x` and `y`. -In the remainder of the book, we won't supply those names. -That saves typing, and, by reducing the amount of boilerplate, makes it easier to see what's different between plots. -That's a really important programming concern that we'll come back to in @sec-functions. - -Rewriting the previous plot more concisely yields: - -```{r} -#| eval: false -#| fig-alt: > -#| A frequency polygon plot of eruption times for the Old Faithful geyser. -#| The distribution of eruption times is binomodal with one mode around 1.75 -#| and the other around 4.5. - -ggplot(faithful, aes(eruptions)) + - geom_freqpoly(binwidth = 0.25) -``` - -Sometimes we'll turn the end of a pipeline of data transformation into a plot. -Watch for the transition from `|>` to `+`. -We wish this transition wasn't necessary but unfortunately ggplot2 was created before the pipe was discovered. - -```{r} -#| eval: false -#| fig-alt: > -#| A tile plot of cut vs. clarity of diamonds. Each tile represents a -#| cut/ckarity combination and tiles are colored according to the number of -#| observations in each tile. There are more Ideal diamonds than other cuts, -#| with the highest number being Ideal diamonds with VS2 clarity. Fair diamonds -#| and diamonds with clarity I1 are the lowest in frequency. - -diamonds |> - count(cut, clarity) |> - ggplot(aes(clarity, cut, fill = n)) + - geom_tile() -``` - ## Summary In this chapter you've learned a variety of tools to help you understand the variation within your data. diff --git a/_quarto.yml b/_quarto.yml index 983c4f7..3aaa96e 100644 --- a/_quarto.yml +++ b/_quarto.yml @@ -34,9 +34,14 @@ book: - workflow-style.qmd - data-import.qmd - workflow-scripts.qmd - - EDA.qmd - workflow-help.qmd + - part: visualize.qmd + chapters: + - layers.qmd + - EDA.qmd + - communication.qmd + - part: transform.qmd chapters: - logicals.qmd @@ -64,7 +69,6 @@ book: - part: communicate.qmd chapters: - quarto.qmd - - communicate-plots.qmd - quarto-formats.qmd - quarto-workflow.qmd diff --git a/communicate-plots.qmd b/communicate-plots.qmd deleted file mode 100644 index f8b2397..0000000 --- a/communicate-plots.qmd +++ /dev/null @@ -1,743 +0,0 @@ -# Graphics for communication {#sec-graphics-communication} - -```{r} -#| results: "asis" -#| echo: false -source("_common.R") -status("drafting") -``` - -## Introduction - -In @sec-exploratory-data-analysis, you learned how to use plots as tools for *exploration*. -When you make exploratory plots, you know---even before looking---which variables the plot will display. -You made each plot for a purpose, could quickly look at it, and then move on to the next plot. -In the course of most analyses, you'll produce tens or hundreds of plots, most of which are immediately thrown away. - -Now that you understand your data, you need to *communicate* your understanding to others. -Your audience will likely not share your background knowledge and will not be deeply invested in the data. -To help others quickly build up a good mental model of the data, you will need to invest considerable effort in making your plots as self-explanatory as possible. -In this chapter, you'll learn some of the tools that ggplot2 provides to do so. - -This chapter focuses on the tools you need to create good graphics. -We assume that you know what you want, and just need to know how to do it. -For that reason, we highly recommend pairing this chapter with a good general visualization book. -We particularly like [*The Truthful Art*](https://www.amazon.com/gp/product/0321934075/), by Albert Cairo. -It doesn't teach the mechanics of creating visualizations, but instead focuses on what you need to think about in order to create effective graphics. - -### Prerequisites - -In this chapter, we'll focus once again on ggplot2. -We'll also use a little dplyr for data manipulation, and a few ggplot2 extension packages, including **ggrepel** and **patchwork**. -Rather than loading those extensions here, we'll refer to their functions explicitly, using the `::` notation. -This will help make it clear which functions are built into ggplot2, and which come from other packages. -Don't forget you'll need to install those packages with `install.packages()` if you don't already have them. - -```{r} -#| message: false - -library(tidyverse) -``` - -## Label - -The easiest place to start when turning an exploratory graphic into an expository graphic is with good labels. -You add labels with the `labs()` function. -This example adds a plot title: - -```{r} -#| message: false - -ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(color = class)) + - geom_smooth(se = FALSE) + - labs(title = "Fuel efficiency generally decreases with engine size") -``` - -The purpose of a plot title is to summarize the main finding. -Avoid titles that just describe what the plot is, e.g. "A scatterplot of engine displacement vs. fuel economy". - -If you need to add more text, there are two other useful labels that you can use in ggplot2 2.2.0 and above: - -- `subtitle` adds additional detail in a smaller font beneath the title. - -- `caption` adds text at the bottom right of the plot, often used to describe the source of the data. - -```{r} -#| message: false - -ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(color = class)) + - geom_smooth(se = FALSE) + - labs( - title = "Fuel efficiency generally decreases with engine size", - subtitle = "Two seaters (sports cars) are an exception because of their light weight", - caption = "Data from fueleconomy.gov" - ) -``` - -You can also use `labs()` to replace the axis and legend titles. -It's usually a good idea to replace short variable names with more detailed descriptions, and to include the units. - -```{r} -#| message: false - -ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(colour = class)) + - geom_smooth(se = FALSE) + - labs( - x = "Engine displacement (L)", - y = "Highway fuel economy (mpg)", - colour = "Car type" - ) -``` - -It's possible to use mathematical equations instead of text strings. -Just switch `""` out for `quote()` and read about the available options in `?plotmath`: - -```{r} -#| fig-asp: 1 -#| out-width: "50%" -#| fig-width: 3 - -df <- tibble( - x = runif(10), - y = runif(10) -) -ggplot(df, aes(x, y)) + - geom_point() + - labs( - x = quote(sum(x[i] ^ 2, i == 1, n)), - y = quote(alpha + beta + frac(delta, theta)) - ) -``` - -### Exercises - -1. Create one plot on the fuel economy data with customized `title`, `subtitle`, `caption`, `x`, `y`, and `colour` labels. - -2. Recreate the following plot using the fuel economy data. - Note that both the colors and shapes of points vary by type of drive train. - - ```{r} - #| echo: false - - ggplot(mpg, aes(cty, hwy, color = drv, shape = drv)) + - geom_point() + - labs( - x = "City MPG", - y = "Highway MPG", - shape = "Type of\ndrive train", - color = "Type of\ndrive train" - ) - ``` - -3. Take an exploratory graphic that you've created in the last month, and add informative titles to make it easier for others to understand. - -## Annotations - -In addition to labelling major components of your plot, it's often useful to label individual observations or groups of observations. -The first tool you have at your disposal is `geom_text()`. -`geom_text()` is similar to `geom_point()`, but it has an additional aesthetic: `label`. -This makes it possible to add textual labels to your plots. - -There are two possible sources of labels. -First, you might have a tibble that provides labels. -The plot below isn't terribly useful, but it illustrates a useful approach: pull out the most efficient car in each class with dplyr, and then label it on the plot: - -```{r} -best_in_class <- mpg |> - group_by(class) |> - filter(row_number(desc(hwy)) == 1) - -ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(colour = class)) + - geom_text(aes(label = model), data = best_in_class) -``` - -This is hard to read because the labels overlap with each other, and with the points. -We can make things a little better by switching to `geom_label()` which draws a rectangle behind the text. -We also use the `nudge_y` parameter to move the labels slightly above the corresponding points: - -```{r} -ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(colour = class)) + - geom_label(aes(label = model), data = best_in_class, nudge_y = 2, alpha = 0.5) -``` - -That helps a bit, but if you look closely in the top-left hand corner, you'll notice that there are two labels practically on top of each other. -This happens because the highway mileage and displacement for the best cars in the compact and subcompact categories are exactly the same. -There's no way that we can fix these by applying the same transformation for every label. -Instead, we can use the **ggrepel** package by Kamil Slowikowski. -This useful package will automatically adjust labels so that they don't overlap: - -```{r} -ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(colour = class)) + - geom_point(size = 3, shape = 1, data = best_in_class) + - ggrepel::geom_label_repel(aes(label = model), data = best_in_class) -``` - -Note another handy technique used here: we added a second layer of large, hollow points to highlight the labelled points. - -You can sometimes use the same idea to replace the legend with labels placed directly on the plot. -It's not wonderful for this plot, but it isn't too bad. -(`theme(legend.position = "none"`) turns the legend off --- we'll talk about it more shortly.) - -```{r} -class_avg <- mpg |> - group_by(class) |> - summarize( - displ = median(displ), - hwy = median(hwy) - ) - -ggplot(mpg, aes(displ, hwy, colour = class)) + - ggrepel::geom_label_repel(aes(label = class), - data = class_avg, - size = 6, - label.size = 0, - segment.color = NA - ) + - geom_point() + - theme(legend.position = "none") -``` - -Alternatively, you might just want to add a single label to the plot, but you'll still need to create a data frame. -Often, you want the label in the corner of the plot, so it's convenient to create a new data frame using `summarize()` to compute the maximum values of x and y. - -```{r} -label_info <- mpg |> - summarize( - displ = max(displ), - hwy = max(hwy), - label = "Increasing engine size is \nrelated to decreasing fuel economy." - ) - -ggplot(mpg, aes(displ, hwy)) + - geom_point() + - geom_text(data = label_info, aes(label = label), vjust = "top", hjust = "right") -``` - -If you want to place the text exactly on the borders of the plot, you can use `+Inf` and `-Inf`. -Since we're no longer computing the positions from `mpg`, we can use `tibble()` to create the data frame: - -```{r} -label_info <- tibble( - displ = Inf, - hwy = Inf, - label = "Increasing engine size is \nrelated to decreasing fuel economy." -) - -ggplot(mpg, aes(displ, hwy)) + - geom_point() + - geom_text(data = label_info, aes(label = label), vjust = "top", hjust = "right") -``` - -In these examples, we manually broke the label up into lines using `"\n"`. -Another approach is to use `stringr::str_wrap()` to automatically add line breaks, given the number of characters you want per line: - -```{r} -"Increasing engine size is related to decreasing fuel economy." |> - str_wrap(width = 40) |> - writeLines() -``` - -Note the use of `hjust` and `vjust` to control the alignment of the label. -@fig-just shows all nine possible combinations. - -```{r} -#| label: fig-just -#| echo: false -#| fig-width: 4.5 -#| fig-asp: 0.5 -#| out-width: "60%" -#| fig-cap: > -#| All nine combinations of `hjust` and `vjust`. - -vjust <- c(bottom = 0, center = 0.5, top = 1) -hjust <- c(left = 0, center = 0.5, right = 1) - -df <- crossing(hj = names(hjust), vj = names(vjust)) |> - mutate( - y = vjust[vj], - x = hjust[hj], - label = paste0("hjust = '", hj, "'\n", "vjust = '", vj, "'") - ) - -ggplot(df, aes(x, y)) + - geom_point(colour = "grey70", size = 5) + - geom_point(size = 0.5, colour = "red") + - geom_text(aes(label = label, hjust = hj, vjust = vj), size = 4) + - labs(x = NULL, y = NULL) -``` - -Remember, in addition to `geom_text()`, you have many other geoms in ggplot2 available to help annotate your plot. -A few ideas: - -- Use `geom_hline()` and `geom_vline()` to add reference lines. - We often make them thick (`size = 2`) and white (`colour = white`), and draw them underneath the primary data layer. - That makes them easy to see, without drawing attention away from the data. - -- Use `geom_rect()` to draw a rectangle around points of interest. - The boundaries of the rectangle are defined by aesthetics `xmin`, `xmax`, `ymin`, `ymax`. - -- Use `geom_segment()` with the `arrow` argument to draw attention to a point with an arrow. - Use aesthetics `x` and `y` to define the starting location, and `xend` and `yend` to define the end location. - -The only limit is your imagination (and your patience with positioning annotations to be aesthetically pleasing)! - -### Exercises - -1. Use `geom_text()` with infinite positions to place text at the four corners of the plot. - -2. Read the documentation for `annotate()`. - How can you use it to add a text label to a plot without having to create a tibble? - -3. How do labels with `geom_text()` interact with faceting? - How can you add a label to a single facet? - How can you put a different label in each facet? - (Hint: Think about the underlying data.) - -4. What arguments to `geom_label()` control the appearance of the background box? - -5. What are the four arguments to `arrow()`? - How do they work? - Create a series of plots that demonstrate the most important options. - -## Scales - -The third way you can make your plot better for communication is to adjust the scales. -Scales control the mapping from data values to things that you can perceive. -Normally, ggplot2 automatically adds scales for you. -For example, when you type: - -```{r} -#| label: default-scales -#| fig-show: "hide" - -ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(colour = class)) -``` - -ggplot2 automatically adds default scales behind the scenes: - -```{r} -#| fig-show: "hide" - -ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(colour = class)) + - scale_x_continuous() + - scale_y_continuous() + - scale_colour_discrete() -``` - -Note the naming scheme for scales: `scale_` followed by the name of the aesthetic, then `_`, then the name of the scale. -The default scales are named according to the type of variable they align with: continuous, discrete, datetime, or date. -There are lots of non-default scales which you'll learn about below. - -The default scales have been carefully chosen to do a good job for a wide range of inputs. -Nevertheless, you might want to override the defaults for two reasons: - -- You might want to tweak some of the parameters of the default scale. - This allows you to do things like change the breaks on the axes, or the key labels on the legend. - -- You might want to replace the scale altogether, and use a completely different algorithm. - Often you can do better than the default because you know more about the data. - -### Axis ticks and legend keys - -There are two primary arguments that affect the appearance of the ticks on the axes and the keys on the legend: `breaks` and `labels`. -Breaks controls the position of the ticks, or the values associated with the keys. -Labels controls the text label associated with each tick/key. -The most common use of `breaks` is to override the default choice: - -```{r} -ggplot(mpg, aes(displ, hwy)) + - geom_point() + - scale_y_continuous(breaks = seq(15, 40, by = 5)) -``` - -You can use `labels` in the same way (a character vector the same length as `breaks`), but you can also set it to `NULL` to suppress the labels altogether. -This is useful for maps, or for publishing plots where you can't share the absolute numbers. - -```{r} -ggplot(mpg, aes(displ, hwy)) + - geom_point() + - scale_x_continuous(labels = NULL) + - scale_y_continuous(labels = NULL) -``` - -You can also use `breaks` and `labels` to control the appearance of legends. -Collectively axes and legends are called **guides**. -Axes are used for x and y aesthetics; legends are used for everything else. - -Another use of `breaks` is when you have relatively few data points and want to highlight exactly where the observations occur. -For example, take this plot that shows when each US president started and ended their term. - -```{r} -presidential |> - mutate(id = 33 + row_number()) |> - ggplot(aes(start, id)) + - geom_point() + - geom_segment(aes(xend = end, yend = id)) + - scale_x_date(NULL, breaks = presidential$start, date_labels = "'%y") -``` - -Note that the specification of breaks and labels for date and datetime scales is a little different: - -- `date_labels` takes a format specification, in the same form as `parse_datetime()`. - -- `date_breaks` (not shown here), takes a string like "2 days" or "1 month". - -### Legend layout - -You will most often use `breaks` and `labels` to tweak the axes. -While they both also work for legends, there are a few other techniques you are more likely to use. - -To control the overall position of the legend, you need to use a `theme()` setting. -We'll come back to themes at the end of the chapter, but in brief, they control the non-data parts of the plot. -The theme setting `legend.position` controls where the legend is drawn: - -```{r} -#| layout-ncol: 2 -#| fig-width: 4 -#| fig-asp: 1 - -base <- ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(colour = class)) - -base + theme(legend.position = "left") -base + theme(legend.position = "top") -base + theme(legend.position = "bottom") -base + theme(legend.position = "right") # the default -``` - -You can also use `legend.position = "none"` to suppress the display of the legend altogether. - -To control the display of individual legends, use `guides()` along with `guide_legend()` or `guide_colorbar()`. -The following example shows two important settings: controlling the number of rows the legend uses with `nrow`, and overriding one of the aesthetics to make the points bigger. -This is particularly useful if you have used a low `alpha` to display many points on a plot. - -```{r} -ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(colour = class)) + - geom_smooth(se = FALSE) + - theme(legend.position = "bottom") + - guides(colour = guide_legend(nrow = 1, override.aes = list(size = 4))) -``` - -### Replacing a scale - -Instead of just tweaking the details a little, you can instead replace the scale altogether. -There are two types of scales you're mostly likely to want to switch out: continuous position scales and colour scales. -Fortunately, the same principles apply to all the other aesthetics, so once you've mastered position and colour, you'll be able to quickly pick up other scale replacements. - -It's very useful to plot transformations of your variable. -For example, as we've seen in [diamond prices](diamond-prices) it's easier to see the precise relationship between `carat` and `price` if we log transform them: - -```{r} -#| fig-align: default -#| layout-ncol: 2 -#| fig-width: 4 -#| fig-height: 3 - -ggplot(diamonds, aes(carat, price)) + - geom_bin2d() - -ggplot(diamonds, aes(log10(carat), log10(price))) + - geom_bin2d() -``` - -However, the disadvantage of this transformation is that the axes are now labelled with the transformed values, making it hard to interpret the plot. -Instead of doing the transformation in the aesthetic mapping, we can instead do it with the scale. -This is visually identical, except the axes are labelled on the original data scale. - -```{r} -ggplot(diamonds, aes(carat, price)) + - geom_bin2d() + - scale_x_log10() + - scale_y_log10() -``` - -Another scale that is frequently customized is colour. -The default categorical scale picks colors that are evenly spaced around the colour wheel. -Useful alternatives are the ColorBrewer scales which have been hand tuned to work better for people with common types of colour blindness. -The two plots below look similar, but there is enough difference in the shades of red and green that the dots on the right can be distinguished even by people with red-green colour blindness. - -```{r} -#| fig-align: default -#| layout-ncol: 2 -#| fig-width: 4 -#| fig-height: 3 - -ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(color = drv)) - -ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(color = drv)) + - scale_colour_brewer(palette = "Set1") -``` - -Don't forget simpler techniques. -If there are just a few colors, you can add a redundant shape mapping. -This will also help ensure your plot is interpretable in black and white. - -```{r} -ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(color = drv, shape = drv)) + - scale_colour_brewer(palette = "Set1") -``` - -The ColorBrewer scales are documented online at and made available in R via the **RColorBrewer** package, by Erich Neuwirth. -@fig-brewer shows the complete list of all palettes. -The sequential (top) and diverging (bottom) palettes are particularly useful if your categorical values are ordered, or have a "middle". -This often arises if you've used `cut()` to make a continuous variable into a categorical variable. - -```{r} -#| label: fig-brewer -#| echo: false -#| fig.cap: All ColourBrewer scales. -#| fig.asp: 2.5 - -par(mar = c(0, 3, 0, 0)) -RColorBrewer::display.brewer.all() -``` - -When you have a predefined mapping between values and colors, use `scale_colour_manual()`. -For example, if we map presidential party to colour, we want to use the standard mapping of red for Republicans and blue for Democrats: - -```{r} -presidential |> - mutate(id = 33 + row_number()) |> - ggplot(aes(start, id, colour = party)) + - geom_point() + - geom_segment(aes(xend = end, yend = id)) + - scale_colour_manual(values = c(Republican = "red", Democratic = "blue")) -``` - -For continuous colour, you can use the built-in `scale_colour_gradient()` or `scale_fill_gradient()`. -If you have a diverging scale, you can use `scale_colour_gradient2()`. -That allows you to give, for example, positive and negative values different colors. -That's sometimes also useful if you want to distinguish points above or below the mean. - -Another option is to use the viridis color scales. -The designers, Nathaniel Smith and Stéfan van der Walt, carefully tailored continuous colour schemes that are perceptible to people with various forms of colour blindness as well as perceptually uniform in both color and black and white. -These scales are available as continuous (`c`), discrete (`d`), and binned (`b`) palettes in ggplot2. - -```{r} -#| fig-align: default -#| layout-ncol: 2 -#| fig-width: 4 -#| fig-asp: 1 - -df <- tibble( - x = rnorm(10000), - y = rnorm(10000) -) -ggplot(df, aes(x, y)) + - geom_hex() + - coord_fixed() + - labs(title = "Default, continuous") - -ggplot(df, aes(x, y)) + - geom_hex() + - coord_fixed() + - scale_fill_viridis_c() + - labs(title = "Viridis, continuous") - -ggplot(df, aes(x, y)) + - geom_hex() + - coord_fixed() + - scale_fill_viridis_b() + - labs(title = "Viridis, binned") -``` - -Note that all colour scales come in two variety: `scale_colour_x()` and `scale_fill_x()` for the `colour` and `fill` aesthetics respectively (the colour scales are available in both UK and US spellings). - -### Exercises - -1. Why doesn't the following code override the default scale? - - ```{r} - #| fig-show: "hide" - - ggplot(df, aes(x, y)) + - geom_hex() + - scale_colour_gradient(low = "white", high = "red") + - coord_fixed() - ``` - -2. What is the first argument to every scale? - How does it compare to `labs()`? - -3. Change the display of the presidential terms by: - - a. Combining the two variants shown above. - b. Improving the display of the y axis. - c. Labelling each term with the name of the president. - d. Adding informative plot labels. - e. Placing breaks every 4 years (this is trickier than it seems!). - -4. Use `override.aes` to make the legend on the following plot easier to see. - - ```{r} - #| fig-format: "png" - #| out-width: "50%" - - ggplot(diamonds, aes(carat, price)) + - geom_point(aes(colour = cut), alpha = 1/20) - ``` - -## Zooming - -There are three ways to control the plot limits: - -1. Adjusting what data are plotted -2. Setting the limits in each scale -3. Setting `xlim` and `ylim` in `coord_cartesian()` - -To zoom in on a region of the plot, it's generally best to use `coord_cartesian()`. -Compare the following two plots: - -```{r} -#| layout-ncol: 2 -#| fig-width: 4 -#| fig-height: 3 -#| message: false - -ggplot(mpg, mapping = aes(displ, hwy)) + - geom_point(aes(color = class)) + - geom_smooth() + - coord_cartesian(xlim = c(5, 7), ylim = c(10, 30)) - -mpg |> - filter(displ >= 5, displ <= 7, hwy >= 10, hwy <= 30) |> - ggplot(aes(displ, hwy)) + - geom_point(aes(color = class)) + - geom_smooth() -``` - -You can also set the `limits` on individual scales. -Reducing the limits is basically equivalent to subsetting the data. -It is generally more useful if you want *expand* the limits, for example, to match scales across different plots. -For example, if we extract two classes of cars and plot them separately, it's difficult to compare the plots because all three scales (the x-axis, the y-axis, and the colour aesthetic) have different ranges. - -```{r} -#| layout-ncol: 2 -#| fig-width: 4 -#| fig-height: 3 - -suv <- mpg |> filter(class == "suv") -compact <- mpg |> filter(class == "compact") - -ggplot(suv, aes(displ, hwy, colour = drv)) + - geom_point() - -ggplot(compact, aes(displ, hwy, colour = drv)) + - geom_point() -``` - -One way to overcome this problem is to share scales across multiple plots, training the scales with the `limits` of the full data. - -```{r} -#| layout-ncol: 2 -#| fig-width: 4 -#| fig-height: 3 - -x_scale <- scale_x_continuous(limits = range(mpg$displ)) -y_scale <- scale_y_continuous(limits = range(mpg$hwy)) -col_scale <- scale_colour_discrete(limits = unique(mpg$drv)) - -ggplot(suv, aes(displ, hwy, colour = drv)) + - geom_point() + - x_scale + - y_scale + - col_scale - -ggplot(compact, aes(displ, hwy, colour = drv)) + - geom_point() + - x_scale + - y_scale + - col_scale -``` - -In this particular case, you could have simply used faceting, but this technique is useful more generally, if for instance, you want to spread plots over multiple pages of a report. - -## Themes - -Finally, you can customize the non-data elements of your plot with a theme: - -```{r} -#| message: false - -ggplot(mpg, aes(displ, hwy)) + - geom_point(aes(color = class)) + - geom_smooth(se = FALSE) + - theme_bw() -``` - -ggplot2 includes eight themes by default, as shown in @fig-themes. -Many more are included in add-on packages like **ggthemes** (), by Jeffrey Arnold. - -```{r} -#| label: fig-themes -#| echo: false -#| fig-cap: The eight themes built-in to ggplot2. -#| fig-alt: > -#| Eight barplots created with ggplot2, each -#| with one of the eight built-in themes: -#| theme_bw() - White background with grid lines, -#| theme_light() - Light axes and grid lines, -#| theme_classic() - Classic theme, axes but no grid -#| lines, theme_linedraw() - Only black lines, -#| theme_dark() - Dark background for contrast, -#| theme_minimal() - Minimal theme, no background, -#| theme_gray() - Gray background (default theme), -#| theme_void() - Empty theme, only geoms are visible. - -knitr::include_graphics("images/visualization-themes.png") -``` - -Many people wonder why the default theme has a gray background. -This was a deliberate choice because it puts the data forward while still making the grid lines visible. -The white grid lines are visible (which is important because they significantly aid position judgments), but they have little visual impact and we can easily tune them out. -The grey background gives the plot a similar typographic colour to the text, ensuring that the graphics fit in with the flow of a document without jumping out with a bright white background. -Finally, the grey background creates a continuous field of colour which ensures that the plot is perceived as a single visual entity. - -It's also possible to control individual components of each theme, like the size and colour of the font used for the y axis. -Unfortunately, this level of detail is outside the scope of this book, so you'll need to read the [ggplot2 book](https://ggplot2-book.org/) for the full details. -You can also create your own themes, if you are trying to match a particular corporate or journal style. - -## Saving your plots {#sec-ggsave} - -There are two main ways to get your plots out of R and into your final write-up: `ggsave()` and knitr. -`ggsave()` will save the most recent plot to disk: - -```{r} -#| fig-show: "hide" - -ggplot(mpg, aes(displ, hwy)) + geom_point() -ggsave("my-plot.pdf") -``` - -```{r} -#| include: false - -file.remove("my-plot.pdf") -``` - -If you don't specify the `width` and `height` they will be taken from the dimensions of the current plotting device. -For reproducible code, you'll want to specify them. - -Generally, however, we recommend that you assemble your final reports using Quarto, so we focus on the important code chunk options that you should know about for graphics. -You can learn more about `ggsave()` in the documentation. - -## Learning more - -The absolute best place to learn more is the ggplot2 book: [*ggplot2: Elegant graphics for data analysis*](https://ggplot2-book.org/). -It goes into much more depth about the underlying theory, and has many more examples of how to combine the individual pieces to solve practical problems. - -Another great resource is the ggplot2 extensions gallery . -This site lists many of the packages that extend ggplot2 with new geoms and scales. -It's a great place to start if you're trying to do something that seems hard with ggplot2. diff --git a/communicate.qmd b/communicate.qmd index 013641a..9cbb780 100644 --- a/communicate.qmd +++ b/communicate.qmd @@ -17,7 +17,7 @@ However, it doesn't matter how great your analysis is unless you can explain it #| can't communicate your results to other humans, it doesn't matter how #| great your analysis is. #| fig-alt: > -#| A diagram displaying the data science cycle with visualize and +#| A diagram displaying the data science cycle with #| communicate highlighed in blue. #| out.width: NULL diff --git a/communication.qmd b/communication.qmd new file mode 100644 index 0000000..3b974eb --- /dev/null +++ b/communication.qmd @@ -0,0 +1,1154 @@ +# Communication {#sec-communication} + +```{r} +#| results: "asis" +#| echo: false +source("_common.R") +status("polishing") +``` + +## Introduction + +In @sec-exploratory-data-analysis, you learned how to use plots as tools for *exploration*. +When you make exploratory plots, you know---even before looking---which variables the plot will display. +You made each plot for a purpose, could quickly look at it, and then move on to the next plot. +In the course of most analyses, you'll produce tens or hundreds of plots, most of which are immediately thrown away. + +Now that you understand your data, you need to *communicate* your understanding to others. +Your audience will likely not share your background knowledge and will not be deeply invested in the data. +To help others quickly build up a good mental model of the data, you will need to invest considerable effort in making your plots as self-explanatory as possible. +In this chapter, you'll learn some of the tools that ggplot2 provides to do so. + +This chapter focuses on the tools you need to create good graphics. +We assume that you know what you want, and just need to know how to do it. +For that reason, we highly recommend pairing this chapter with a good general visualization book. +We particularly like [The Truthful Art](https://www.amazon.com/gp/product/0321934075/), by Albert Cairo. +It doesn't teach the mechanics of creating visualizations, but instead focuses on what you need to think about in order to create effective graphics. + +### Prerequisites + +In this chapter, we'll focus once again on ggplot2. +We'll also use a little dplyr for data manipulation, **scales** to override the default breaks, labels, transformations and palettes, and a few ggplot2 extension packages, including **ggrepel** ([https://ggrepel.slowkow.com](https://ggrepel.slowkow.com/)) by Kamil Slowikowski and **patchwork** ([https://patchwork.data-imaginist.com](https://patchwork.data-imaginist.com/)) by Thomas Lin Pedersen. +Don't forget that you'll need to install those packages with `install.packages()` if you don't already have them. + +```{r} +#| label: setup + +library(tidyverse) +library(ggrepel) +library(patchwork) +``` + +## Labels + +The easiest place to start when turning an exploratory graphic into an expository graphic is with good labels. +You add labels with the `labs()` function. +This example adds a plot title: + +```{r} +#| message: false +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars, where +#| points are colored according to the car class. A smooth curve following +#| the trajectory of the relationship between highway fuel efficiency versus +#| engine size of cars is overlaid. The plot is titled "Fuel efficiency +#| generally decreases with engine size". + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = class)) + + geom_smooth(se = FALSE) + + labs(title = "Fuel efficiency generally decreases with engine size") +``` + +The purpose of a plot title is to summarize the main finding. +Avoid titles that just describe what the plot is, e.g. "A scatterplot of engine displacement vs. fuel economy". + +If you need to add more text, there are two other useful labels: + +- `subtitle` adds additional detail in a smaller font beneath the title. + +- `caption` adds text at the bottom right of the plot, often used to describe the source of the data. + +```{r} +#| message: false +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars, where +#| points are colored according to the car class. A smooth curve following +#| the trajectory of the relationship between highway fuel efficiency versus +#| engine size of cars is overlaid. The plot is titled "Fuel efficiency +#| generally decreases with engine size". The subtitle is "Two seaters +#| (sports cars) are an exception because of their light weight" and the +#| caption is "Data from fueleconomy.gov". + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = class)) + + geom_smooth(se = FALSE) + + labs( + title = "Fuel efficiency generally decreases with engine size", + subtitle = "Two seaters (sports cars) are an exception because of their light weight", + caption = "Data from fueleconomy.gov" + ) +``` + +You can also use `labs()` to replace the axis and legend titles. +It's usually a good idea to replace short variable names with more detailed descriptions, and to include the units. + +```{r} +#| message: false +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars, where +#| points are colored according to the car class. A smooth curve following +#| the trajectory of the relationship between highway fuel efficiency versus +#| engine size of cars is overlaid. The x-axis is labelled "Engine +#| displacement (L)" and the y-axis is labelled "Highway fuel economy (mpg)". +#| The legend is labelled "Car type". + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = class)) + + geom_smooth(se = FALSE) + + labs( + x = "Engine displacement (L)", + y = "Highway fuel economy (mpg)", + color = "Car type" + ) +``` + +It's possible to use mathematical equations instead of text strings. +Just switch `""` out for `quote()` and read about the available options in `?plotmath`: + +```{r} +#| fig-asp: 1 +#| out-width: "50%" +#| fig-width: 3 +#| fig-alt: > +#| Scatterplot with math text on the x and y axis labels. X-axis label +#| says sum of x_i squared, for i from 1 to n. Y-axis label says alpha + +#| beta + delta over theta. + +df <- tibble( + x = 1:10, + y = x ^ 2 +) + +ggplot(df, aes(x, y)) + + geom_point() + + labs( + x = quote(sum(x[i] ^ 2, i == 1, n)), + y = quote(alpha + beta + frac(delta, theta)) + ) +``` + +### Exercises + +1. Create one plot on the fuel economy data with customized `title`, `subtitle`, `caption`, `x`, `y`, and `color` labels. + +2. Recreate the following plot using the fuel economy data. + Note that both the colors and shapes of points vary by type of drive train. + + ```{r} + #| echo: false + #| fig-alt: > + #| Scatterplot of highway versus city fuel efficiency. Shapes and + #| colors of points are determined by type of drive train. + + ggplot(mpg, aes(x = cty, y = hwy, color = drv, shape = drv)) + + geom_point() + + labs( + x = "City MPG", + y = "Highway MPG", + shape = "Type of\ndrive train", + color = "Type of\ndrive train" + ) + ``` + +3. Take an exploratory graphic that you've created in the last month, and add informative titles to make it easier for others to understand. + +## Annotations + +In addition to labelling major components of your plot, it's often useful to label individual observations or groups of observations. +The first tool you have at your disposal is `geom_text()`. +`geom_text()` is similar to `geom_point()`, but it has an additional aesthetic: `label`. +This makes it possible to add textual labels to your plots. + +There are two possible sources of labels. +First, you might have a tibble that provides labels. +In the following plot we pull out the cars with the highest engine size in each drive type and save their information as a new data frame called `label_info`. +In order to create the `label_info` data frame we used a number of new dplyr functions. +You'll learn more about each of these soon! + +```{r} +label_info <- mpg |> + group_by(drv) |> + arrange(desc(displ)) |> + slice_head(n = 1) |> + mutate( + drive_type = case_when( + drv == "f" ~ "front-wheel drive", + drv == "r" ~ "rear-wheel drive", + drv == "4" ~ "4-wheel drive" + ) + ) |> + select(displ, hwy, drv, drive_type) + +label_info +``` + +Then, we use this new data frame to directly label the three groups to replace the legend with labels placed directly on the plot. +Using the `fontface` and `size` arguments we can customize the look of the text labels. +They're larger than the rest of the text on the plot and bolded. +(`theme(legend.position = "none"`) turns the legend off --- we'll talk about it more shortly.) + +```{r} +#| fig-alt: > +#| Scatterplot of highway mileage versus engine size where points are colored +#| by drive type. Smooth curves for each drive type are overlaid. +#| Text labels identify the curves as front-wheel, rear-wheel, and 4-wheel. + +ggplot(mpg, aes(x = displ, y = hwy, color = drv)) + + geom_point(alpha = 0.3) + + geom_smooth(se = FALSE) + + geom_text( + data = label_info, + aes(x = displ, y = hwy, label = drive_type), + fontface = "bold", size = 5, hjust = "right", vjust = "bottom" + ) + + theme(legend.position = "none") +``` + +Note the use of `hjust` and `vjust` to control the alignment of the label. +@fig-just shows all nine possible combinations. + +```{r} +#| label: fig-just +#| echo: false +#| fig-width: 4.5 +#| fig-asp: 0.5 +#| out-width: "60%" +#| fig-cap: > +#| All nine combinations of `hjust` and `vjust`. +#| fig-alt: > +#| A 1x1 grid. At (0,0) hjust is set to left and vjust is set to bottom. +#| At (0.5, 0) hjust is center and vjust is bottom and at (1, 0) hjust is +#| right and vjust is bottom. At (0, 0.5) hjust is left and vjust is +#| center, at (0.5, 0.5) hjust is center and vjust is center, and at (1, 0.5) +#| hjust is right and vjust is center. Finally, at (1, 0) hjust is left and +#| vjust is top, at (0.5, 1) hjust is center and vjust is top, and at (1, 1) +#| hjust is right and vjust is bottom. + +vjust <- c(bottom = 0, center = 0.5, top = 1) +hjust <- c(left = 0, center = 0.5, right = 1) + +df <- crossing(hj = names(hjust), vj = names(vjust)) |> + mutate( + y = vjust[vj], + x = hjust[hj], + label = paste0("hjust = '", hj, "'\n", "vjust = '", vj, "'") + ) + +ggplot(df, aes(x, y)) + + geom_point(color = "grey70", size = 5) + + geom_point(size = 0.5, color = "red") + + geom_text(aes(label = label, hjust = hj, vjust = vj), size = 4) + + labs(x = NULL, y = NULL) +``` + +However the annotated plot we made above is hard to read because the labels overlap with each other, and with the points. +We can make things a little better by switching to `geom_label()` which draws a rectangle behind the text. +We also use the `nudge_y` parameter to move the labels slightly above the corresponding points: + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars, where +#| points are colored according to the car class. Some points are labelled +#| with the car's name. The labels are box with white, transparent background. + +ggplot(mpg, aes(x = displ, y = hwy, color = drv)) + + geom_point(alpha = 0.3) + + geom_smooth(se = FALSE) + + geom_label( + data = label_info, + aes(x = displ, y = hwy, label = drive_type), + fontface = "bold", size = 5, hjust = "right", alpha = 0.5, nudge_y = 2, + ) + + theme(legend.position = "none") +``` + +That helps a bit, but two of the labels still overlap with each other. +This is difficult to fix by applying the same transformation for every label. +Instead, we can use the `geom_label_repel()` function from the ggrepel package. +This useful package will automatically adjust labels so that they don't overlap: + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars, where +#| points are colored according to the car class. Some points are labelled +#| with the car's name. The labels are box with white, transparent background +#| and positioned to not overlap. + +ggplot(mpg, aes(x = displ, y = hwy, color = drv)) + + geom_point(alpha = 0.3) + + geom_smooth(se = FALSE) + + geom_label_repel( + data = label_info, + aes(x = displ, y = hwy, label = drive_type), + fontface = "bold", size = 5, nudge_y = 2, + ) + + theme(legend.position = "none") +``` + +You can also use the same idea to highlight certain points on a plot with `geom_text_repel()` from the ggrepel package. +Note another handy technique used here: we added a second layer of large, hollow points to further highlight the labelled points. + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars. Points +#| where highway mileage is above 40 as well as above 20 with engine size +#| above 5 are red, with a hollow red circle, and labelled with model name +#| of the car. + +potential_outliers <- mpg |> + filter(hwy > 40 | (hwy > 20 & displ > 5)) + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + geom_text_repel(data = potential_outliers, aes(label = model)) + + geom_point(data = potential_outliers, color = "red") + + geom_point(data = potential_outliers, color = "red", size = 3, shape = "circle open") +``` + +Alternatively, you might just want to add a single label to the plot, but you'll still need to create a data frame. +Often, you want the label in the corner of the plot, so it's convenient to create a new data frame using `summarize()` to compute the maximum values of x and y. + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars. On the +#| top right corner, inset a bit from the corner, is an annotation that +#| reads "increasing engine size is related to decreasing fuel economy". +#| The text spans two lines. + +label_info <- mpg |> + summarize( + displ = max(displ), + hwy = max(hwy), + label = "Increasing engine size is \nrelated to decreasing fuel economy." + ) + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + geom_text( + data = label_info, aes(label = label), + vjust = "top", hjust = "right" + ) +``` + +If you want to place the text exactly on the borders of the plot, you can use `+Inf` and `-Inf`. +Since we're no longer computing the positions from `mpg`, we can use `tibble()` to create the data frame: + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars. On the +#| top right corner, flush against the corner, is an annotation that +#| reads "increasing engine size is related to decreasing fuel economy". +#| The text spans two lines. + +label_info <- tibble( + displ = Inf, + hwy = Inf, + label = "Increasing engine size is \nrelated to decreasing fuel economy." +) + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + geom_text(data = label_info, aes(label = label), vjust = "top", hjust = "right") +``` + +Alternatively, we can add the annotation without creating a new data frame, using `annotate()`. +This function adds a geom to a plot, but it doesn't map variables of a data frame to an aesthetic. +The first argument of this function, `geom`, is the geometric object you want to use for annotation. + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars. On the +#| top right corner, flush against the corner, is an annotation that +#| reads "increasing engine size is related to decreasing fuel economy". +#| The text spans two lines. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + annotate( + geom = "text", x = Inf, y = Inf, + label = "Increasing engine size is \nrelated to decreasing fuel economy.", + vjust = "top", hjust = "right" + ) +``` + +You can also use a label geom instead of a text geom like we did earlier, set aesthetics like color. +Another approach for drawing attention to a plot feature is using a segment geom with the `arrow` argument. +The `x` and `y` aesthetics define the starting location of the segment and `xend` and `yend` to define the end location. + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars. A red +#| arrow pointing down follows the trend of the points and the annptation +#| placed next to the arrow reads "increasing engine size is related to +#| decreasing fuel economy". The arrow and the annotation text is red. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + annotate( + geom = "label", x = 3.5, y = 38, + label = "Increasing engine size is \nrelated to decreasing fuel economy.", + hjust = "left", color = "red" + ) + + annotate( + geom = "segment", + x = 3, y = 35, xend = 5, yend = 25, color = "red", + arrow = arrow(type = "closed") + ) +``` + +In these examples, we manually broke the label up into lines using `"\n"`. +Another approach is to use `stringr::str_wrap()` to automatically add line breaks, given the number of characters you want per line: + +```{r} +"Increasing engine size is related to decreasing fuel economy." |> + str_wrap(width = 40) |> + writeLines() +``` + +Remember, in addition to `geom_text()`, you have many other geoms in ggplot2 available to help annotate your plot. +A couple ideas: + +- Use `geom_hline()` and `geom_vline()` to add reference lines. + We often make them thick (`size = 2`) and white (`color = white`), and draw them underneath the primary data layer. + That makes them easy to see, without drawing attention away from the data. + +- Use `geom_rect()` to draw a rectangle around points of interest. + The boundaries of the rectangle are defined by aesthetics `xmin`, `xmax`, `ymin`, `ymax`. + +- Use `geom_segment()` with the `arrow` argument to draw attention to a point with an arrow. + Use aesthetics `x` and `y` to define the starting location, and `xend` and `yend` to define the end location. + +The only limit is your imagination (and your patience with positioning annotations to be aesthetically pleasing)! + +### Exercises + +1. Use `geom_text()` with infinite positions to place text at the four corners of the plot. + +2. Use `annotate()` to add a point geom in the middle of your last plot without having to create a tibble. + Customize the shape, size, or color of the point. + +3. How do labels with `geom_text()` interact with faceting? + How can you add a label to a single facet? + How can you put a different label in each facet? + (Hint: Think about the underlying data.) + +4. What arguments to `geom_label()` control the appearance of the background box? + +5. What are the four arguments to `arrow()`? + How do they work? + Create a series of plots that demonstrate the most important options. + +## Scales + +The third way you can make your plot better for communication is to adjust the scales. +Scales control the mapping from data values to things that you can perceive. + +### Default scales + +Normally, ggplot2 automatically adds scales for you. +For example, when you type: + +```{r} +#| label: default-scales +#| fig-show: "hide" + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = class)) +``` + +ggplot2 automatically adds default scales behind the scenes: + +```{r} +#| fig-show: "hide" + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = class)) + + scale_x_continuous() + + scale_y_continuous() + + scale_color_discrete() +``` + +Note the naming scheme for scales: `scale_` followed by the name of the aesthetic, then `_`, then the name of the scale. +The default scales are named according to the type of variable they align with: continuous, discrete, datetime, or date. +There are lots of non-default scales which you'll learn about below. + +The default scales have been carefully chosen to do a good job for a wide range of inputs. +Nevertheless, you might want to override the defaults for two reasons: + +- You might want to tweak some of the parameters of the default scale. + This allows you to do things like change the breaks on the axes, or the key labels on the legend. + +- You might want to replace the scale altogether, and use a completely different algorithm. + Often you can do better than the default because you know more about the data. + +### Axis ticks and legend keys + +There are two primary arguments that affect the appearance of the ticks on the axes and the keys on the legend: `breaks` and `labels`. +Breaks controls the position of the ticks, or the values associated with the keys. +Labels controls the text label associated with each tick/key. +The most common use of `breaks` is to override the default choice: + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars. +#| The y-axis has breaks starting at 15 and ending at 40, increasing by 5. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + scale_y_continuous(breaks = seq(15, 40, by = 5)) +``` + +You can use `labels` in the same way (a character vector the same length as `breaks`), but you can also set it to `NULL` to suppress the labels altogether. +This is useful for maps, or for publishing plots where you can't share the absolute numbers. + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars. +#| The x and y-axes do not have any labels at the axis ticks. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + scale_x_continuous(labels = NULL) + + scale_y_continuous(labels = NULL) +``` + +The `labels` argument coupled with labelling functions from the scales package is also useful for formatting numbers as currency, percent, etc. +The plot on the left shows default labelling with `label_dollar()`, which adds a dollar sign as well as a thousand separator comma. +The plot on the right adds further customization by dividing dollar values by 1,000 and adding a suffix "K" (for "thousands") as well as adding custom breaks. +Note that `breaks` is in the original scale of the data. + +```{r} +#| layout-ncol: 2 +#| fig-alt: > +#| Two side-by-side box plots of price versus cut of diamonds. The outliers +#| are transparent. On both plots the y-axis labels are formatted as dollars. +#| The y-axis labels on the plot start at $0 and go to $15,000, increasing +#| by $5,000. The y-axis labels on the right plot start at $1K and go to +#| $19K, increasing by $6K. + +# Left +ggplot(diamonds, aes(x = cut, y = price)) + + geom_boxplot(alpha = 0.05) + + scale_y_continuous(labels = scales::label_dollar()) + +# Right +ggplot(diamonds, aes(x = cut, y = price)) + + geom_boxplot(alpha = 0.05) + + scale_y_continuous( + labels = scales::label_dollar(scale = 1/1000, suffix = "K"), + breaks = seq(1000, 19000, by = 6000) + ) +``` + +Another handy label function is `label_percent()`: + +```{r} +#| fig-alt: > +#| Segmented bar plots of cut, filled with levels of clarity. The y-axis +#| labels start at 0% and go to 100%, increasing by 25%. The y-axis label +#| name is "Percentage". + +ggplot(diamonds, aes(x = cut, fill = clarity)) + + geom_bar(position = "fill") + + scale_y_continuous( + name = "Percentage", + labels = scales::label_percent() + ) +``` + +You can also use `breaks` and `labels` to control the appearance of legends. +Collectively axes and legends are called **guides**. +Axes are used for x and y aesthetics; legends are used for everything else. + +Another use of `breaks` is when you have relatively few data points and want to highlight exactly where the observations occur. +For example, take this plot that shows when each US president started and ended their term. + +```{r} +#| fig-alt: > +#| Line plot of id number of presidents versus the year they started their +#| presidency. Start year is marked with a point and a segment that starts +#| there and ends at the end of the presidency. The x-axis labels are +#| formatted as two digit years starting with an apostrophe, e.g., '53. + +presidential |> + mutate(id = 33 + row_number()) |> + ggplot(aes(start, id)) + + geom_point() + + geom_segment(aes(xend = end, yend = id)) + + scale_x_date(name = NULL, breaks = presidential$start, date_labels = "'%y") +``` + +Note that the specification of breaks and labels for date and datetime scales is a little different: + +- `date_labels` takes a format specification, in the same form as `parse_datetime()`. + +- `date_breaks` (not shown here), takes a string like "2 days" or "1 month". + +### Legend layout + +You will most often use `breaks` and `labels` to tweak the axes. +While they both also work for legends, there are a few other techniques you are more likely to use. + +To control the overall position of the legend, you need to use a `theme()` setting. +We'll come back to themes at the end of the chapter, but in brief, they control the non-data parts of the plot. +The theme setting `legend.position` controls where the legend is drawn: + +```{r} +#| layout-ncol: 2 +#| fig-width: 4 +#| fig-asp: 1 +#| fig-alt: > +#| Four scatterplots of highway fuel efficiency versus engine size of cars +#| where points are colored based on class of car. Clockwise, the legend +#| is placed on the left, top, bottom, and right of the plot. + +base <- ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = class)) + +base + theme(legend.position = "left") +base + theme(legend.position = "top") +base + theme(legend.position = "bottom") +base + theme(legend.position = "right") # the default +``` + +You can also use `legend.position = "none"` to suppress the display of the legend altogether. + +To control the display of individual legends, use `guides()` along with `guide_legend()` or `guide_colorbar()`. +The following example shows two important settings: controlling the number of rows the legend uses with `nrow`, and overriding one of the aesthetics to make the points bigger. +This is particularly useful if you have used a low `alpha` to display many points on a plot. + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars +#| where points are colored based on class of car. Overlaid on the plot is a +#| smooth curve. The legend is in the bottom and classes are listed +#| horizontally in a row. The points in the legend are larger than the points +#| in the plot. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = class)) + + geom_smooth(se = FALSE) + + theme(legend.position = "bottom") + + guides(color = guide_legend(nrow = 1, override.aes = list(size = 4))) +``` + +### Replacing a scale + +Instead of just tweaking the details a little, you can instead replace the scale altogether. +There are two types of scales you're mostly likely to want to switch out: continuous position scales and color scales. +Fortunately, the same principles apply to all the other aesthetics, so once you've mastered position and color, you'll be able to quickly pick up other scale replacements. + +It's very useful to plot transformations of your variable. +For example, it's easier to see the precise relationship between `carat` and `price` if we log transform them: + +```{r} +#| fig-align: default +#| layout-ncol: 2 +#| fig-width: 4 +#| fig-height: 3 +#| fig-alt: > +#| Two plots of price versus carat of diamonds. Data binned and the color of +#| the rectangles representing each bin based on the number of points that +#| fall into that bin. In the plot on the right, price and carat values +#| are logged and the axis labels shows the logged values. + +# Left +ggplot(diamonds, aes(x = carat, y = price)) + + geom_bin2d() + +# Right +ggplot(diamonds, aes(x = log10(carat), y = log10(price))) + + geom_bin2d() +``` + +However, the disadvantage of this transformation is that the axes are now labelled with the transformed values, making it hard to interpret the plot. +Instead of doing the transformation in the aesthetic mapping, we can instead do it with the scale. +This is visually identical, except the axes are labelled on the original data scale. + +```{r} +#| fig-alt: > +#| Plot of price versus carat of diamonds. Data binned and the color of +#| the rectangles representing each bin based on the number of points that +#| fall into that bin. The axis labels are on the original data scale. + +ggplot(diamonds, aes(x = carat, y = price)) + + geom_bin2d() + + scale_x_log10() + + scale_y_log10() +``` + +Another scale that is frequently customized is color. +The default categorical scale picks colors that are evenly spaced around the color wheel. +Useful alternatives are the ColorBrewer scales which have been hand tuned to work better for people with common types of color blindness. +The two plots below look similar, but there is enough difference in the shades of red and green that the dots on the right can be distinguished even by people with red-green color blindness. + +```{r} +#| fig-align: default +#| layout-ncol: 2 +#| fig-width: 4 +#| fig-height: 3 +#| fig-alt: > +#| Two scatterplots of highway mileage versus engine size where points are +#| colored by drive type. The plot on the left uses the default +#| ggplot2 color palette and the plot on the right uses a different color +#| palette. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = drv)) + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = drv)) + + scale_color_brewer(palette = "Set1") +``` + +Don't forget simpler techniques. +If there are just a few colors, you can add a redundant shape mapping. +This will also help ensure your plot is interpretable in black and white. + +```{r} +#| fig-alt: > +#| Two scatterplots of highway mileage versus engine size where both color +#| and shape of points are based on drive type. The color palette is not +#| the default ggplot2 palette. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = drv, shape = drv)) + + scale_color_brewer(palette = "Set1") +``` + +The ColorBrewer scales are documented online at and made available in R via the **RColorBrewer** package, by Erich Neuwirth. +@fig-brewer shows the complete list of all palettes. +The sequential (top) and diverging (bottom) palettes are particularly useful if your categorical values are ordered, or have a "middle". +This often arises if you've used `cut()` to make a continuous variable into a categorical variable. + +```{r} +#| label: fig-brewer +#| echo: false +#| fig.cap: All colorBrewer scales. +#| fig.asp: 2.5 +#| fig-alt: > +#| All colorBrewer scales. One group goes from light to dark colors. +#| Another group is a set of non ordinal colors. And the last group has +#| diverging scales (from dark to light to dark again). Within each set +#| there are a number of palettes. + +par(mar = c(0, 3, 0, 0)) +RColorBrewer::display.brewer.all() +``` + +When you have a predefined mapping between values and colors, use `scale_color_manual()`. +For example, if we map presidential party to color, we want to use the standard mapping of red for Republicans and blue for Democrats: + +```{r} +#| fig-alt: > +#| Line plot of id number of presidents versus the year they started their +#| presidency. Start year is marked with a point and a segment that starts +#| there and ends at the end of the presidency. Democratic presidents are +#| represented in black and Republicans in red. + +presidential |> + mutate(id = 33 + row_number()) |> + ggplot(aes(start, id, color = party)) + + geom_point() + + geom_segment(aes(xend = end, yend = id)) + + scale_color_manual(values = c(Republican = "red", Democratic = "blue")) +``` + +For continuous color, you can use the built-in `scale_color_gradient()` or `scale_fill_gradient()`. +If you have a diverging scale, you can use `scale_color_gradient2()`. +That allows you to give, for example, positive and negative values different colors. +That's sometimes also useful if you want to distinguish points above or below the mean. + +Another option is to use the viridis color scales. +The designers, Nathaniel Smith and Stéfan van der Walt, carefully tailored continuous color schemes that are perceptible to people with various forms of color blindness as well as perceptually uniform in both color and black and white. +These scales are available as continuous (`c`), discrete (`d`), and binned (`b`) palettes in ggplot2. + +```{r} +#| fig-align: default +#| layout-ncol: 2 +#| fig-width: 4 +#| fig-asp: 1 +#| fig-alt: > +#| Three hex plots where the color of the hexes show the number of observations +#| that fall into that hex bin. The first plot uses the default, continuous +#| ggplot2 scale. The second plot uses the viridis, continuous scale, and the +#| third plot uses the viridis, binned scale. + +df <- tibble( + x = rnorm(10000), + y = rnorm(10000) +) + +ggplot(df, aes(x, y)) + + geom_hex() + + coord_fixed() + + labs(title = "Default, continuous") + +ggplot(df, aes(x, y)) + + geom_hex() + + coord_fixed() + + scale_fill_viridis_c() + + labs(title = "Viridis, continuous") + +ggplot(df, aes(x, y)) + + geom_hex() + + coord_fixed() + + scale_fill_viridis_b() + + labs(title = "Viridis, binned") +``` + +Note that all color scales come in two variety: `scale_color_x()` and `scale_fill_x()` for the `color` and `fill` aesthetics respectively (the color scales are available in both UK and US spellings). + +### Zooming + +There are three ways to control the plot limits: + +1. Adjusting what data are plotted. +2. Setting the limits in each scale. +3. Setting `xlim` and `ylim` in `coord_cartesian()`. + +To zoom in on a region of the plot, it's generally best to use `coord_cartesian()`. +Compare the following two plots: + +```{r} +#| layout-ncol: 2 +#| fig-width: 4 +#| fig-height: 3 +#| message: false + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = class)) + + geom_smooth() + + coord_cartesian(xlim = c(5, 7), ylim = c(10, 30)) + +mpg |> + filter(displ >= 5, displ <= 7, hwy >= 10, hwy <= 30) |> + ggplot(aes(x = displ, y = hwy)) + + geom_point(aes(color = class)) + + geom_smooth() +``` + +You can also set the `limits` on individual scales. +Reducing the limits is basically equivalent to subsetting the data. +It is generally more useful if you want *expand* the limits, for example, to match scales across different plots. +For example, if we extract two classes of cars and plot them separately, it's difficult to compare the plots because all three scales (the x-axis, the y-axis, and the color aesthetic) have different ranges. + +```{r} +#| layout-ncol: 2 +#| fig-width: 4 +#| fig-height: 3 + +suv <- mpg |> filter(class == "suv") +compact <- mpg |> filter(class == "compact") + +ggplot(suv, aes(displ, hwy, color = drv)) + + geom_point() + +ggplot(compact, aes(displ, hwy, color = drv)) + + geom_point() +``` + +One way to overcome this problem is to share scales across multiple plots, training the scales with the `limits` of the full data. + +```{r} +#| layout-ncol: 2 +#| fig-width: 4 +#| fig-height: 3 + +x_scale <- scale_x_continuous(limits = range(mpg$displ)) +y_scale <- scale_y_continuous(limits = range(mpg$hwy)) +col_scale <- scale_color_discrete(limits = unique(mpg$drv)) + +ggplot(suv, aes(x = displ, y = hwy, color = drv)) + + geom_point() + + x_scale + + y_scale + + col_scale + +ggplot(compact, aes(x = displ, y = hwy, color = drv)) + + geom_point() + + x_scale + + y_scale + + col_scale +``` + +In this particular case, you could have simply used faceting, but this technique is useful more generally, if for instance, you want to spread plots over multiple pages of a report. + +### Exercises + +1. Why doesn't the following code override the default scale? + + ```{r} + #| fig-show: "hide" + + df <- tibble( + x = rnorm(10000), + y = rnorm(10000) + ) + + ggplot(df, aes(x, y)) + + geom_hex() + + scale_color_gradient(low = "white", high = "red") + + coord_fixed() + ``` + +2. What is the first argument to every scale? + How does it compare to `labs()`? + +3. Change the display of the presidential terms by: + + a. Combining the two variants shown above. + b. Improving the display of the y axis. + c. Labelling each term with the name of the president. + d. Adding informative plot labels. + e. Placing breaks every 4 years (this is trickier than it seems!). + +4. Use `override.aes` to make the legend on the following plot easier to see. + + ```{r} + #| fig-format: "png" + #| out-width: "50%" + #| fig-alt: > + #| Scatterplot of price versus carat of diamonds. The points are colored + #| by cut of the diamonds and they're very transparent. + + ggplot(diamonds, aes(x = carat, y = price)) + + geom_point(aes(color = cut), alpha = 1/20) + ``` + +## Themes {#sec-themes} + +Finally, you can customize the non-data elements of your plot with a theme: + +```{r} +#| message: false + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = class)) + + geom_smooth(se = FALSE) + + theme_bw() +``` + +ggplot2 includes eight themes by default, as shown in @fig-themes. +Many more are included in add-on packages like **ggthemes** (), by Jeffrey Arnold. +You can also create your own themes, if you are trying to match a particular corporate or journal style. + +```{r} +#| label: fig-themes +#| echo: false +#| fig-cap: The eight themes built-in to ggplot2. +#| fig-alt: > +#| Eight barplots created with ggplot2, each +#| with one of the eight built-in themes: +#| theme_bw() - White background with grid lines, +#| theme_light() - Light axes and grid lines, +#| theme_classic() - Classic theme, axes but no grid +#| lines, theme_linedraw() - Only black lines, +#| theme_dark() - Dark background for contrast, +#| theme_minimal() - Minimal theme, no background, +#| theme_gray() - Gray background (default theme), +#| theme_void() - Empty theme, only geoms are visible. + +knitr::include_graphics("images/visualization-themes.png") +``` + +Many people wonder why the default theme has a gray background. +This was a deliberate choice because it puts the data forward while still making the grid lines visible. +The white grid lines are visible (which is important because they significantly aid position judgments), but they have little visual impact and we can easily tune them out. +The grey background gives the plot a similar typographic color to the text, ensuring that the graphics fit in with the flow of a document without jumping out with a bright white background. +Finally, the grey background creates a continuous field of color which ensures that the plot is perceived as a single visual entity. + +It's also possible to control individual components of each theme, like the size and color of the font used for the y axis. +We've already seen that `legend.position` controls where the legend is drawn. +There are many other aspects of the legend that can be customized with `theme()`. +For example, in the plot below we change the direction of the legend as well as put a black border around it. +A few other helpful `theme()` components are use to change the placement for format of the title and caption text. + +```{r} +ggplot(mpg, aes(x = displ, y = hwy, color = drv)) + + geom_point() + + labs( + title = "Highway mileage decreases as engine size increases", + caption = "Source: https://fueleconomy.gov." + ) + + theme( + legend.position = c(0.6, 0.7), + legend.direction = "horizontal", + legend.box.background = element_rect(color = "black"), + plot.title = element_text(face = "bold"), + plot.title.position = "plot", + plot.caption.position = "plot", + plot.caption = element_text(hjust = 0) + ) +``` + +For an overview of all `theme()` components, see help with `?theme`. +The [ggplot2 book](https://ggplot2-book.org/) is also a great place to go for the full details on theming. + +### Exercises + +1. Pick a theme offered by the ggthemes package and apply it to the last plot you made. +2. Make the axis labels of your plot blue and bolded. + +## Layout + +So far we talked about how to create and modify a single plot. +What if you have multiple plots you want to lay out in a certain way? +The patchwork package allows you to combine separate plots into the same graphic. +We loaded this package earlier in the chapter. + +To place two plots next to each other, you can simply add them to each other. +Note that you first need to create the plots and save them as objects (in the following example they're called `p1` and `p2`). +Then, you place them next to each other with `+`. + +```{r} +#| fig-alt: > +#| Two plots (a scatterplot of highway mileage versus engine size and a +#| side-by-side boxplots of highway mileage versus drive train) placed next +#| to each other. + +p1 <- ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + labs(title = "Plot 1") +p2 <- ggplot(mpg, aes(x = drv, y = hwy)) + + geom_boxplot() + + labs(title = "Plot 2") +p1 + p2 +``` + +It's important to note that in the above code chunk we did not use a new function from the patchwork package. +Instead, the package added a new functionality to the `+` operator. + +You can also create arbitrary plot layouts with patchwork. +In the following, `|` places the `p1` and `p3` next to each other and `/` moves `p2` to the next line. + +```{r} +#| fig-alt: > +#| Three plots laid out such that first and third plot are next to each other +#| and the second plot streatched beneath them. The first plot is a +#| scatterplot of highway mileage versus engine size, third plot is a +#| scatterplot of highway mileage versus city mileage, and the third plot is +#| side-by-side boxplots of highway mileage versus drive train) placed next +#| to each other. + +p3 <- ggplot(mpg, aes(x = cty, y = hwy)) + + geom_point() + + labs(title = "Plot 3") +(p1 | p3) / p2 +``` + +Additionally, patchwork allows you to collect legends from multiple plots into one common legend, customize the placement of the legend as well as dimensions of the plots, and add a common title, subtitle, caption, etc. to your plots. +In the following, we have 5 plots. +We have turned off the legends on the box plots and the scatterplot and collected the legends for the density plots at the top of the plot with `& theme(legend.position = "top")`. +Note the use of the `&` operator here instead of the usual `+`. +This is because we're modifying the theme for the patchwork plot as opposed to the individual ggplots. +The legend is placed on top, inside the `guide_area()`. +Finally, we have also customized the heights of the various components of our patchwork -- the guide has a height of 1, the box plots 3, density plots 2, and the faceted scatter plot 4. +Patchwork divides up the area you have allotted for your plot using this scale and places the components accordingly. + +```{r} +#| fig-alt: > +#| Five plots laid out such that first two plots are next to each other. Plots +#| three and four are underneath them. And the fifth plot stretches under them. +#| The patchworked plot is titled "City and highway mileage for cars with +#| different drive trains" and captioned "Source: Source: https://fueleconomy.gov". +#| The first two plots are side-by-side box plots. Plots 3 and 4 are density +#| plots. And the fifth plot is a faceted scatterplot. Each of these plots show +#| geoms colored by drive train, but the patchworked plot has only one legend +#| that applies to all of them, above the plots and beneath the title. + +p1 <- ggplot(mpg, aes(x = drv, y = cty, color = drv)) + + geom_boxplot(show.legend = FALSE) + + labs(title = "Plot 1") + +p2 <- ggplot(mpg, aes(x = drv, y = hwy, color = drv)) + + geom_boxplot(show.legend = FALSE) + + labs(title = "Plot 2") + +p3 <- ggplot(mpg, aes(x = cty, color = drv, fill = drv)) + + geom_density(alpha = 0.5) + + labs(title = "Plot 3") + +p4 <- ggplot(mpg, aes(x = hwy, color = drv, fill = drv)) + + geom_density(alpha = 0.5) + + labs(title = "Plot 4") + +p5 <- ggplot(mpg, aes(x = cty, y = hwy, color = drv)) + + geom_point(show.legend = FALSE) + + facet_wrap(~drv) + + labs(title = "Plot 5") + +(guide_area() / (p1 + p2) / (p3 + p4) / p5) + + plot_annotation( + title = "City and highway mileage for cars with different drive trains", + caption = "Source: Source: https://fueleconomy.gov." + ) + + plot_layout( + guides = "collect", + heights = c(1, 3, 2, 4) + ) & + theme(legend.position = "bottom") +``` + +If you'd like to learn more about combining and layout out multiple plots with patchwork, we recommend looking through the guides on the package website: . + +### Exercises + +1. What happens if you omit the parentheses in the following plot layout. + Can you explain why this happens? + + ```{r} + #| results: hide + + p1 <- ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + labs(title = "Plot 1") + p2 <- ggplot(mpg, aes(x = drv, y = hwy)) + + geom_boxplot() + + labs(title = "Plot 2") + p3 <- ggplot(mpg, aes(x = cty, y = hwy)) + + geom_point() + + labs(title = "Plot 3") + + (p1 | p2) / p3 + ``` + +2. Using the three plots from the previous exercise, recreate the following patchwork. + + ```{r} + #| echo: false + #| fig-alt: > + #| Three plots: Plot 1 is a scatterplot of highway mileage versus engine size. + #| Plot 2 is side-by-side box plots of highway mileage versus drive train. + #| Plot 3 is side-by-side box plots of city mileage versus drive train. + #| Plots 1 is on the first row. Plots 2 and 3 are on the next row, each span + #| half the width of Plot 1. Plot 1 is labelled "Fig. A", Plot 2 is labelled + #| "Fig. B", and Plot 3 is labelled "Fig. C". + + p1 / (p2 + p3) + + plot_annotation( + tag_levels = c("A"), + tag_prefix = "Fig. ", + tag_suffix = ":" + ) + ``` + +## Summary + +In this chapter you've learned about adding plot labels such as title, subtitle, caption as well as modifying default axis labels, using annotation to add informational text to your plot or to highlight specific data points, customizing the axis scales, and changing the theme of your plot. +You've also learned about combining multiple plots in a single graph using both simple and complex plot layouts. + +While you've so far learned about how to make many different types of plots and how to customize them using a variety of techniques, we've barely scratched the surface of what you can create with ggplot2. +If you want to get a comprehensive understanding of ggplot2, we recommend reading the book, [*ggplot2: Elegant Graphics for Data Analysis*](https://ggplot2-book.org). +Other useful resources are the [*R Graphics Cookbook*](https://r-graphics.org) by Winston Chang and [*Fundamentals of Data Visualization*](https://clauswilke.com/dataviz/) by Claus Wilke. diff --git a/data-visualize.qmd b/data-visualize.qmd index a53b096..932a1f6 100644 --- a/data-visualize.qmd +++ b/data-visualize.qmd @@ -4,17 +4,22 @@ #| results: "asis" #| echo: false source("_common.R") +status("complete") ``` ## Introduction > "The simple graph has brought more information to the data analyst's mind than any other device." --- John Tukey -This chapter will teach you how to visualize your data using ggplot2. R has several systems for making graphs, but ggplot2 is one of the most elegant and most versatile. ggplot2 implements the **grammar of graphics**, a coherent system for describing and building graphs. With ggplot2, you can do more and faster by learning one system and applying it in many places. +This chapter will teach you how to visualize your data using ggplot2. +We will start by creating a simple scatterplot and use that to introduce aesthetic mappings and geometric objects -- the fundamental building blocks of ggplot2. +We will then walk you through visualizing distributions of single variables as well as visualizing relationships between two or more variables. +We'll finish off with saving your plots and troubleshooting tips. + ### Prerequisites This chapter focuses on ggplot2, one of the core packages in the tidyverse. @@ -40,325 +45,769 @@ library(tidyverse) You only need to install a package once, but you need to reload it every time you start a new session. +In addition to tidyverse, we will also use the **palmerpenguins** package, which includes the `penguins` dataset containing body measurements for penguins in three islands in the Palmer Archipelago. + +```{r} +library(palmerpenguins) +``` + ## First steps -Let's use our first graph to answer a question: Do cars with big engines use more fuel than cars with small engines? +Let's use our first graph to answer a question: Do penguins with longer flippers weigh more or less than penguins with shorter flippers? You probably already have an answer, but try to make your answer precise. -What does the relationship between engine size and fuel efficiency look like? +What does the relationship between flipper length and body mass look like? Is it positive? Negative? Linear? Nonlinear? +Does the relationship vary by the species of the penguin? +And how about by the island where the penguin lives. -### The `mpg` data frame +### The `penguins` data frame -You can test your answer with the `mpg` **data frame** found in ggplot2 (a.k.a. `ggplot2::mpg`). +You can test your answer with the `penguins` **data frame** found in palmerpenguins (a.k.a. `palmerpenguins::penguins`). A data frame is a rectangular collection of variables (in the columns) and observations (in the rows). -`mpg` contains `r nrow(mpg)` observations collected by the US Environmental Protection Agency on `r mpg |> distinct(model) |> nrow()` car models. +`penguins` contains `r nrow(penguins)` observations collected and made available by Dr. Kristen Gorman and the Palmer Station, Antarctica LTER[^data-visualize-1]. + +[^data-visualize-1]: Horst AM, Hill AP, Gorman KB (2020). + palmerpenguins: Palmer Archipelago (Antarctica) penguin data. + R package version 0.1.0. + . + doi: 10.5281/zenodo.3960218. ```{r} -mpg +penguins ``` -Among the variables in `mpg` are: +This data frame contains `r ncol(penguins)` columns. +For an alternative view, where you can see all variables and the first few observations of each variable, use `glimpse()`. +Or, if you're in RStudio, run `View(penguins)` to open an interactive data viewer. -1. `displ`: a car's engine size, in liters. +```{r} +glimpse(penguins) +``` -2. `hwy`: a car's fuel efficiency on the highway, in miles per gallon (mpg). - A car with a low fuel efficiency consumes more fuel than a car with a high fuel efficiency when they travel the same distance. +Among the variables in `penguins` are: -To learn more about `mpg`, open its help page by running `?mpg`. +1. `species`: a penguin's species (Adelie, Chinstrap, or Gentoo). + +2. `flipper_length_mm`: length of a penguin's flipper, in millimeters. + +3. `body_mass_g`: body mass of a penguin, in grams. + +To learn more about `penguins`, open its help page by running `?penguins`. + +### Ultimate goal {#sec-ultimate-goal} + +Our ultimate goal in this chapter is to recreate the following visualization displaying the relationship between flipper lengths and body masses of these penguins, taking into consideration the species of the penguin. + +```{r} +#| echo: false +#| warning: false +#| fig-alt: > +#| A scatterplot of body mass vs. flipper length of penguins, with a +#| smooth curve displaying the relationship between these two variables +#| overlaid. The plot displays a positive, fairly linear, relatively +#| strong relationship between these two variables. Species (Adelie, +#| Chinstrap, and Gentoo) are represented with different colors and +#| shapes. The relationship between body mass and flipper length is +#| roughly the same for these three species, and Gentoo penguins are +#| larger than penguins from the other two species. + +ggplot(penguins, aes(x = flipper_length_mm, y = body_mass_g)) + + geom_point(aes(color = species, shape = species)) + + geom_smooth() + + labs( + title = "Body mass and flipper length", + subtitle = "Dimensions for Adelie, Chinstrap, and Gentoo Penguins", + x = "Flipper length (mm)", + y = "Body mass (mm)", + color = "Species", + shape = "Species" + ) +``` ### Creating a ggplot -To plot `mpg`, run this code to put `displ` on the x-axis, `hwy` on the y-axis, and represent each observation with a point: +Let's recreate this plot layer-by-layer. + +With ggplot2, you begin a plot with the function `ggplot()`, defining a plot object that you then add layers to. +The first argument of `ggplot()` is the dataset to use in the graph and So `ggplot(data = penguins)` creates an empty graph. +This is not a very exciting plot, but you can think of it like an empty canvas you'll paint the remaining layers of your plot onto. ```{r} #| fig-alt: > -#| Scatterplot of highway fuel efficiency versus engine size of cars that -#| shows a negative association. +#| A blank, gray plot area. -ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy)) +ggplot(data = penguins) ``` -The plot shows a negative relationship between engine size (`displ`) and fuel efficiency (`hwy`). -In other words, cars with smaller engine sizes have higher fuel efficiency and, in general, as engine size increases, fuel efficiency decreases. -Does this confirm or refute your hypothesis about fuel efficiency and engine size? +Next, we need to tell `ggplot()` the variables from this data frame that we want to map to visual properties (**aesthetics**) of the plot. +The `mapping` argument of the `ggplot()` function defines how variables in your dataset are mapped to visual properties of your plot. +The `mapping` argument is always paired with the `aes()` function, and the `x` and `y` arguments of `aes()` specify which variables to map to the x and y axes. +For now, we will only map flipper length to the `x` aesthetic and body mass to the `y` aesthetic. +ggplot2 looks for the mapped variables in the `data` argument, in this case, `penguins`. -With ggplot2, you begin a plot with the function `ggplot()`. -`ggplot()` creates a coordinate system that you can add layers to. -You can think of it like an empty canvas you'll paint the rest of your plot on, layer by layer. -The first argument of `ggplot()` is the dataset to use in the graph. -So `ggplot(data = mpg)` creates an empty graph, but it's not very interesting so we won't show it here. +The following plots show the result of adding these mappings, one at a time. + +```{r} +#| layout-ncol: 2 +#| fig-alt: > +#| There are two plots. The plot on the left is shows flipper length on +#| the x-axis. The values range from 170 to 230 The plot on the right +#| also shows body mass on the y-axis. The values range from 3000 to +#| 6000. + +ggplot(data = penguins, + mapping = aes(x = flipper_length_mm)) +ggplot(data = penguins, + mapping = aes(x = flipper_length_mm, y = body_mass_g)) +``` + +Our empty canvas now has more structure -- it's clear where flipper lengths will be displayed (on the x-axis) and where body masses will be displayed (on the y-axis). +But the penguins themselves are not yet on the plot. +This is because we have not yet articulated, in our code, how to represent the observations from our data frame on our plot. + +To do so, we need to define a **geom**: the geometrical object that a plot uses to represent data. +These geometric objects are made available in ggplot2 with functions that start with `geom_`. +People often describe plots by the type of geom that the plot uses. +For example, bar charts use bar geoms (`geom_bar()`), line charts use line geoms (`geom_line()`), boxplots use boxplot geoms (`geom_boxplot()`), and so on. +Scatterplots break the trend; they use the point geom: `geom_point()`. -You complete your graph by adding one or more layers to `ggplot()`. The function `geom_point()` adds a layer of points to your plot, which creates a scatterplot. ggplot2 comes with many geom functions that each adds a different type of layer to a plot. -You'll learn a whole bunch of them throughout this chapter. +You'll learn a whole bunch of geoms throughout the book, particularly in @sec-layers. -Each geom function in ggplot2 takes a `mapping` argument. -This defines how variables in your dataset are mapped to visual properties of your plot. -The `mapping` argument is always paired with `aes()`, and the `x` and `y` arguments of `aes()` specify which variables to map to the x and y axes. -ggplot2 looks for the mapped variables in the `data` argument, in this case, `mpg`. +```{r} +#| fig-alt: > +#| A scatterplot of body mass vs. flipper length of penguins. The plot +#| displays a positive, linear, relatively strong relationship between +#| these two variables. -### A graphing template +ggplot(data = penguins, + mapping = aes(x = flipper_length_mm, y = body_mass_g)) + + geom_point() +``` -Let's turn this code into a reusable template for making graphs with ggplot2. -To make a graph, replace the bracketed sections in the code below with a dataset, a geom function, or a collection of mappings. +Now we have something that looks like what we might think of as a "scatter plot". +It doesn't yet match our "ultimate goal" plot, but using this plot we can start answering the question that motivated our exploration: "What does the relationship between flipper length and body mass look like?" The relationship appears to be positive, fairly linear, and moderately strong. +Penguins with longer flippers are generally larger in terms of their body mass. + +Before we add more layers to this plot, let's pause for a moment and review the warning message we got: + +> Removed 2 rows containing missing values (`geom_point()`). + +We're seeing this message because there are two penguins in our dataset with missing body mass and flipper length values and ggplot2 has no way of representing them on the plot. +You don't need to worry about understanding the following code yet (you will learn about it in @sec-data-transform), but it's one way of identifying the observations with `NA`s for either body mass or flipper length. + +```{r} +penguins |> + select(species, flipper_length_mm, body_mass_g) |> + filter(is.na(body_mass_g) | is.na(flipper_length_mm)) +``` + +Like R, ggplot2 subscribes to the philosophy that missing values should never silently go missing. +This type of warning is probably one of the most common types of warnings you will see when working with real data -- missing values are a very common issue and you'll learn more about them throughout the book, particularly in @sec-missing-values. +For the remaining plots in this chapter we will suppress this warning so it's not printed alongside every single plot we make. + +### Adding aesthetics and layers + +Scatterplots are useful for displaying the relationship between two variables, but it's always a good idea to be skeptical of any apparent relationship between two variables and ask if there may be other variables that explain or change the nature of this apparent relationship. +Let's incorporate species into our plot and see if this reveals any additional insights into the apparent relationship between flipper length and body mass. +We will do this by representing species with different colored points. + +To achieve this, where should `species` go in the ggplot call from earlier? +If you guessed "in the aesthetic mapping, inside of `aes()`", you're already getting the hang of creating data visualizations with ggplot2! +And if not, don't worry. +Throughout the book you will make many more ggplots and have many more opportunities to check your intuition as you make them. + +```{r} +#| warning: false +#| fig-alt: > +#| A scatterplot of body mass vs. flipper length of penguins. The plot +#| displays a positive, fairly linear, relatively strong relationship +#| between these two variables. Species (Adelie, Chinstrap, and Gentoo) +#| are represented with different colors. + +ggplot(data = penguins, + mapping = aes(x = flipper_length_mm, y = body_mass_g, + color = species)) + + geom_point() +``` + +When a variable is mapped to an aesthetic, ggplot2 will automatically assign a unique value of the aesthetic (here a unique color) to each unique level of the variable (each of the three species), a process known as **scaling**. +ggplot2 will also add a legend that explains which values correspond to which levels. + +Now let's add one more layer: a smooth curve displaying the relationship between body mass and flipper length. +Before you proceed, refer back to the code above, and think about how we can add this to our existing plot. + +Since this is a new geometric object representing our data, we will add a new geom: `geom_smooth()`. + +```{r} +#| warning: false +#| fig-alt: > +#| A scatterplot of body mass vs. flipper length of penguins. Overlaid +#| on the scatterplot are three smooth curves displaying the +#| relationship between these variables for each species (Adelie, +#| Chinstrap, and Gentoo). Different penguin species are plotted in +#| different colors for the points and the smooth curves. + +ggplot(data = penguins, + mapping = aes(x = flipper_length_mm, y = body_mass_g, + color = species)) + + geom_point() + + geom_smooth() +``` + +We have successfully added a smooth curves, but this plot doesn't look like the plot from @sec-ultimate-goal, which only has one curve for the entire dataset as opposed to separate curves for each of the penguin species. + +When aesthetic mappings are defined in `ggplot()`, at the *global* level, they're inherited by each of the subsequent geom layers of the plot. +However, each geom function in ggplot2 can also take a `mapping` argument, which allows for aesthetic mappings at the *local* level. +Since we want points to be colored based on species but don't want the smooth curves to be separated out for them, we should specify `color = species` for `geom_point()` only. + +```{r} +#| warning: false +#| fig-alt: > +#| A scatterplot of body mass vs. flipper length of penguins. Overlaid +#| on the scatterplot are is a single smooth curve displaying the +#| relationship between these variables for each species (Adelie, +#| Chinstrap, and Gentoo). Different penguin species are plotted in +#| different colors for the points only. + +ggplot(data = penguins, + mapping = aes(x = flipper_length_mm, y = body_mass_g)) + + geom_point(mapping = aes(color = species)) + + geom_smooth() +``` + +Voila! +We have something that looks very much like our ultimate goal, though it's not yet perfect. +We still need to use different shapes for each species of penguins and improve labels. + +It's generally not a good idea to represent information using only colors on a plot, as people perceive colors differently due to color blindness or other color vision differences. +Therefore, in addition to color, we can also map `species` to the `shape` aesthetic. + +```{r} +#| warning: false +#| fig-alt: > +#| A scatterplot of body mass vs. flipper length of penguins. Overlaid +#| on the scatterplot are is a single smooth curve displaying the +#| relationship between these variables for each species (Adelie, +#| Chinstrap, and Gentoo). Different penguin species are plotted in +#| different colors and shapes for the points only. + +ggplot(data = penguins, + mapping = aes(x = flipper_length_mm, y = body_mass_g)) + + geom_point(mapping = aes(color = species, shape = species)) + + geom_smooth() +``` + +Note that the legend is automatically updated to reflect the different shapes of the points as well. + +And finally, we can improve the labels of our plot using the `labs()` function in a new layer. + +```{r} +#| warning: false +#| fig-alt: > +#| A scatterplot of body mass vs. flipper length of penguins, with a +#| smooth curve displaying the relationship between these two variables +#| overlaid. The plot displays a positive, fairly linear, relatively +#| strong relationship between these two variables. Species (Adelie, +#| Chinstrap, and Gentoo) are represented with different colors and +#| shapes. The relationship between body mass and flipper length is +#| roughly the same for these three species, and Gentoo penguins are +#| larger than penguins from the other two species. + +ggplot(penguins, + aes(x = flipper_length_mm, y = body_mass_g)) + + geom_point(aes(color = species, shape = species)) + + geom_smooth() + + labs( + title = "Body mass and flipper length", + subtitle = "Dimensions for Adelie, Chinstrap, and Gentoo Penguins", + x = "Flipper length (mm)", + y = "Body mass (mm)", + color = "Species", + shape = "Species" + ) +``` + +We finally have a plot that perfectly matches our "ultimate goal"! + +### Exercises + +1. How many rows are in `penguins`? + How many columns? + +2. What does the `bill_depth_mm` variable in the `penguins` data frame describe? + Read the help for `?penguins` to find out. + +3. Make a scatterplot of `bill_depth_mm` vs `bill_length_mm`. + Describe the relationship between these two variables. + +4. What happens if you make a scatterplot of `species` vs `bill_depth_mm`? + Why is the plot not useful? + +5. Why does the following give an error and how would you fix it? + + ```{r} + #| eval: false + + ggplot(data = penguins) + + geom_point() + ``` + +6. What does the `na.rm` argument do in `geom_point()`? + What is the default value of the argument? + Create a scatterplot where you successfully use this argument set to `TRUE`. + +7. Add the following caption to the plot you made in the previous exercise: "Data come from the palmerpenguins package." Hint: Take a look at the documentation for `labs()`. + +8. Recreate the following visualization. + What aesthetic should `bill_depth_mm` be mapped to? + And should it be mapped at the global level or at the geom level? + + ```{r} + #| echo: false + #| fig-alt: > + #| A scatterplot of body mass vs. flipper length of penguins, colored + #| by bill depth. A smooth curve of the relationship between body mass + #| and flipper length is overlaid. The relationship is positive, + #| fairly linear, and moderately strong. + + ggplot(data = penguins, + mapping = aes(x = flipper_length_mm, y = body_mass_g)) + + geom_point(aes(color = bill_depth_mm)) + + geom_smooth() + ``` + +9 . +Run this code in your head and predict what the output will look like. +Then, run the code in R and check your predictions. + + ```{r} + #| eval: false + + ggplot(data = mpg, mapping = aes(x = displ, y = hwy, color = drv)) + + geom_point() + + geom_smooth(se = FALSE) + ``` + +10. Will these two graphs look different? + Why/why not? + + ```{r} + #| eval: false + + ggplot(data = mpg, mapping = aes(x = displ, y = hwy)) + + geom_point() + + geom_smooth() + + ggplot() + + geom_point(data = mpg, mapping = aes(x = displ, y = hwy)) + + geom_smooth(data = mpg, mapping = aes(x = displ, y = hwy)) + ``` + +## ggplot2 calls + +As we move on from these introductory sections, we'll transition to a more concise expression of ggplot2 code. +So far we've been very explicit, which is helpful when you are learning: ```{r} #| eval: false -ggplot(data = ) + - (mapping = aes()) +ggplot(data = penguins, + mapping = aes(x = flipper_length_mm, y = body_mass_g)) + + geom_point() ``` -The rest of this chapter will show you how to complete and extend this template to make different types of graphs. -We will begin with the `` component. +Typically, the first one or two arguments to a function are so important that you should know them by heart. +The first two arguments to `ggplot()` are `data` and `mapping`, in the remainder of the book, we won't supply those names. +That saves typing, and, by reducing the amount of boilerplate, makes it easier to see what's different between plots. +That's a really important programming concern that we'll come back to in @sec-functions. -### Exercises - -1. Run `ggplot(data = mpg)`. - What do you see? - -2. How many rows are in `mpg`? - How many columns? - -3. What does the `drv` variable describe? - Read the help for `?mpg` to find out. - -4. Make a scatterplot of `hwy` vs `cyl`. - -5. What happens if you make a scatterplot of `class` vs `drv`? - Why is the plot not useful? - -## Aesthetic mappings - -> "The greatest value of a picture is when it forces us to notice what we never expected to see." --- John Tukey - -In the plot below, one group of points (highlighted in red) seems to fall outside of the linear trend. -These cars have a higher fuel efficiency than you might expect. -That is, they have a higher miles per gallon than other cars with similar engine sizes. -How can you explain these cars? +Rewriting the previous plot more concisely yields: ```{r} -#| echo: false -#| fig-alt: > -#| Scatterplot of highway fuel efficiency versus engine size of cars that -#| shows a negative association. Cars with engine size greater than 5 litres -#| and highway fuel efficiency greater than 20 miles per gallon stand out from -#| the rest of the data and are highlighted in red. +#| eval: false -ggplot(data = mpg, mapping = aes(x = displ, y = hwy)) + - geom_point() + - geom_point(data = dplyr::filter(mpg, displ > 5, hwy > 20), color = "red", size = 1.6) + - geom_point(data = dplyr::filter(mpg, displ > 5, hwy > 20), color = "red", size = 3, shape = "circle open") +ggplot(penguins, aes(x = flipper_length_mm, y = body_mass_g)) + + geom_point() ``` -Let's hypothesize that the cars are hybrids. -One way to test this hypothesis is to look at the `class` value for each car. -The `class` variable of the `mpg` dataset classifies cars into groups such as compact, midsize, and SUV. -If the outlying points are hybrids, they should be classified as compact cars or, perhaps, subcompact cars (keep in mind that this data was collected before hybrid trucks and SUVs became popular). - -You can add a third variable, like `class`, to a two dimensional scatterplot by mapping it to an **aesthetic**. -An aesthetic is a visual property of the objects in your plot. -Aesthetics include things like the size, the shape, or the color of your points. -You can display a point (like the one below) in different ways by changing the values of its aesthetic properties. -Since we already use the word "value" to describe data, let's use the word "level" to describe aesthetic properties. -Here we change the levels of a point's size, shape, and color to make the point small, triangular, or blue: +In the future, you'll also learn about the pipe which will allow you to create that plot with: ```{r} -#| echo: false -#| fig.asp: 0.25 -#| fig-width: 8 -#| fig-alt: > -#| Diagram that shows four plotting characters next to each other. The first -#| is a large circle, the second is a small circle, the third is a triangle, -#| and the fourth is a blue circle. +#| eval: false -ggplot() + - geom_point(aes(1, 1), size = 20) + - geom_point(aes(2, 1), size = 10) + - geom_point(aes(3, 1), size = 20, shape = 17) + - geom_point(aes(4, 1), size = 20, color = "blue") + - scale_x_continuous(NULL, limits = c(0.5, 4.5), labels = NULL) + - scale_y_continuous(NULL, limits = c(0.9, 1.1), labels = NULL) + - theme(aspect.ratio = 1/3) +penguins |> + ggplot(aes(x = flipper_length_mm, y = body_mass_g)) + + geom_point() ``` -You can convey information about your data by mapping the aesthetics in your plot to the variables in your dataset. -For example, you can map the colors of your points to the `class` variable to reveal the class of each car. +This is the most common syntax you'll see in the wild. + +## Visualizing distributions + +How you visualize the distribution of a variable depends on the type of variable: categorical or numerical. + +### A categorical variable + +A variable is **categorical** if it can only take one of a small set of values. +To examine the distribution of a categorical variable, you can use a bar chart. +The height of the bars displays how many observations occurred with each `x` value. ```{r} #| fig-alt: > -#| Scatterplot of highway fuel efficiency versus engine size of cars that -#| shows a negative association. The points representing each car are colored -#| according to the class of the car. The legend on the right of the plot -#| shows the mapping between colors and levels of the class variable: -#| 2seater, compact, midsize, minivan, pickup, or suv. +#| A bar chart of frequencies of species of penguins: Adelie +#| (approximately 150), Chinstrap (approximately 90), Gentoo +#| (approximately 125). -ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy, color = class)) +ggplot(penguins, aes(x = species)) + + geom_bar() ``` -(If you prefer British English, like Hadley, you can use `colour` instead of `color`.) - -To map an aesthetic to a variable, associate the name of the aesthetic with the name of the variable inside `aes()`. -ggplot2 will automatically assign a unique level of the aesthetic (here a unique color) to each unique value of the variable, a process known as **scaling**. -ggplot2 will also add a legend that explains which levels correspond to which values. - -The colors reveal that many of the unusual points (with engine size greater than 5 liters and highway fuel efficiency greater than 20 miles per gallon) are two-seater cars. -These cars don't seem like hybrids, and are, in fact, sports cars! -Sports cars have large engines like SUVs and pickup trucks, but small bodies like midsize and compact cars, which improves their gas mileage. -In hindsight, these cars were unlikely to be hybrids since they have large engines. - -In the above example, we mapped `class` to the `color` aesthetic, but we could have mapped `class` to the `size` aesthetic in the same way. -In this case, the exact size of each point would reveal its class affiliation. -We get a *warning* here: mapping an unordered variable (`class`) to an ordered aesthetic (`size`) is generally not a good idea because it implies a ranking that does not in fact exist. +In bar plots of categorical variables with non-ordered levels, like the penguin `species` above, it's often preferable to reorder the bars based on their frequencies. +Doing so requires transforming the variable to a factor (how R handles categorical data) and then reordering the levels of that factor. ```{r} #| fig-alt: > -#| Scatterplot of highway fuel efficiency versus engine size of cars that -#| shows a negative association. The points representing each car are sized -#| according to the class of the car. The legend on the right of the plot -#| shows the mapping between sizes and levels of the class variable -- going -#| from small to large: 2seater, compact, midsize, minivan, pickup, or suv. +#| A bar chart of frequencies of species of penguins, where the bars are +#| ordered in decreasing order of their heights (frequencies): Adelie +#| (approximately 150), Gentoo (approximately 125), Chinstrap +#| (approximately 90). -ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy, size = class)) +ggplot(penguins, aes(x = fct_infreq(species))) + + geom_bar() ``` -Similarly, we could have mapped `class` to the `alpha` aesthetic, which controls the transparency of the points, or to the `shape` aesthetic, which controls the shape of the points. +You will learn more about factors and functions for dealing with factors (like `fct_infreq()` shown above) in @sec-factors. + +### A numerical variable + +A variable is **numerical** if it can take any of an infinite set of ordered values. +Numbers and date-times are two examples of continuous variables. +To visualize the distribution of a continuous variable, you can use a histogram or a density plot. ```{r} +#| warning: false #| layout-ncol: 2 -#| fig-width: 4 -#| fig-height: 2 -#| warning: false #| fig-alt: > -#| Two scatterplots next to each other, both visualizing highway fuel -#| efficiency versus engine size of cars and showing a negative association. -#| In the plot on the left class is mapped to the alpha aesthetic, resulting -#| in different transparency levels for each level of class. In the plot on -#| the right class is mapped the shape aesthetic, resulting in different -#| plotting character shapes for each level of class. Each plot comes with a -#| legend that shows the mapping between alpha level or shape and levels of -#| the class variable. +#| A histogram (on the left) and density plot (on the right) of body masses +#| of penguins. The distribution is unimodal and right skewed, ranging +#| between approximately 2500 to 6500 grams. -# Left -ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy, alpha = class)) - -# Right -ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy, shape = class)) +ggplot(penguins, aes(x = body_mass_g)) + + geom_histogram(binwidth = 200) +ggplot(penguins, aes(x = body_mass_g)) + + geom_density() ``` -What happened to the SUVs? -ggplot2 will only use six shapes at a time. -By default, additional groups will go unplotted when you use the shape aesthetic. - -For each aesthetic, you use `aes()` to associate the name of the aesthetic with a variable to display. -The `aes()` function gathers together each of the aesthetic mappings used by a layer and passes them to the layer's mapping argument. -The syntax highlights a useful insight about `x` and `y`: the x and y locations of a point are themselves aesthetics, visual properties that you can map to variables to display information about the data. - -Once you map an aesthetic, ggplot2 takes care of the rest. -It selects a reasonable scale to use with the aesthetic, and it constructs a legend that explains the mapping between levels and values. -For x and y aesthetics, ggplot2 does not create a legend, but it creates an axis line with tick marks and a label. -The axis line acts as a legend; it explains the mapping between locations and values. - -You can also *set* the aesthetic properties of your geom manually. -For example, we can make all of the points in our plot blue: +A histogram divides the x-axis into equally spaced bins and then uses the height of a bar to display the number of observations that fall in each bin. +In the graph above, the tallest bar shows that 39 observations have a `body_mass_g` value between 3,500 and 3,700 grams, which are the left and right edges of the bar. ```{r} -#| fig-alt: > -#| Scatterplot of highway fuel efficiency versus engine size of cars that -#| shows a negative association. All points are blue. - -ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy), color = "blue") +penguins |> + count(cut_width(body_mass_g, 200)) ``` -Here, the color doesn't convey information about a variable, but only changes the appearance of the plot. -To set an aesthetic manually, set the aesthetic by name as an argument of your geom function. -In other words, it goes *outside* of `aes()`. -You'll need to pick a value that makes sense for that aesthetic: - -- The name of a color as a character string. -- The size of a point in mm. -- The shape of a point as a number, as shown in @fig-shapes. +You can set the width of the intervals in a histogram with the binwidth argument, which is measured in the units of the `x` variable. +You should always explore a variety of binwidths when working with histograms, as different binwidths can reveal different patterns. +In the plots below a binwidth of 20 is too narrow, resulting in too many bars, making it difficult to determine the shape of the distribution. +Similarly, a binwidth of 2,000 is too high, resulting in all data being binned into only three bars, and also making it difficult to determine the shape of the distribution. ```{r} -#| label: fig-shapes -#| echo: false #| warning: false -#| fig.asp: 0.364 -#| fig-align: "center" -#| fig-cap: > -#| R has 25 built in shapes that are identified by numbers. There are some -#| seeming duplicates: for example, 0, 15, and 22 are all squares. The -#| difference comes from the interaction of the `color` and `fill` -#| aesthetics. The hollow shapes (0--14) have a border determined by `color`; -#| the solid shapes (15--20) are filled with `color`; the filled shapes -#| (21--24) have a border of `color` and are filled with `fill`. +#| layout-ncol: 3 #| fig-alt: > -#| Mapping between shapes and the numbers that represent them: 0 - square, -#| 1 - circle, 2 - triangle point up, 3 - plus, 4 - cross, 5 - diamond, -#| 6 - triangle point down, 7 - square cross, 8 - star, 9 - diamond plus, -#| 10 - circle plus, 11 - triangles up and down, 12 - square plus, -#| 13 - circle cross, 14 - square and triangle down, 15 - filled square, -#| 16 - filled circle, 17 - filled triangle point-up, 18 - filled diamond, -#| 19 - solid circle, 20 - bullet (smaller circle), 21 - filled circle blue, -#| 22 - filled square blue, 23 - filled diamond blue, 24 - filled triangle -#| point-up blue, 25 - filled triangle point down blue. +#| Three histograms of body masses of penguins, one with binwidth of 20 +#| (right), one with binwidth of 200 (center), and one with binwidth of +#| 2000 (left). The histogram with binwidth of 20 shows lots of ups and +#| downs in the heights of the bins, creating a jagged outline. The histogram +#| with binwidth of 2000 shows only three bins. -shapes <- tibble( - shape = c(0, 1, 2, 5, 3, 4, 6:19, 22, 21, 24, 23, 20), - x = (0:24 %/% 5) / 2, - y = (-(0:24 %% 5)) / 4 -) -ggplot(shapes, aes(x, y)) + - geom_point(aes(shape = shape), size = 5, fill = "red") + - geom_text(aes(label = shape), hjust = 0, nudge_x = 0.15) + - scale_shape_identity() + - expand_limits(x = 4.1) + - scale_x_continuous(NULL, breaks = NULL) + - scale_y_continuous(NULL, breaks = NULL, limits = c(-1.2, 0.2)) + - theme_minimal() + - theme(aspect.ratio = 1/2.75) +ggplot(penguins, aes(x = body_mass_g)) + + geom_histogram(binwidth = 20) +ggplot(penguins, aes(x = body_mass_g)) + + geom_histogram(binwidth = 200) +ggplot(penguins, aes(x = body_mass_g)) + + geom_histogram(binwidth = 2000) ``` ### Exercises -1. Why did the following code not result in a plot with blue points? +1. Make a bar plot of `species` of `penguins`, where you assign `species` to the `y` aesthetic. + How is this plot different? + +2. How are the following two plots different? + Which aesthetic, `color` or `fill`, is more useful for changing the color of bars? ```{r} - #| fig-alt: > - #| Scatterplot of highway fuel efficiency versus engine size of cars - #| that shows a negative association. All points are red and - #| the legend shows a red point that is mapped to the word blue. + #| eval: false - ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy, color = "blue")) + ggplot(penguins, aes(x = species)) + + geom_bar(color = "red") + + ggplot(penguins, aes(x = species)) + + geom_bar(fill = "red") ``` -2. Which variables in `mpg` are categorical? +3. What does the `bins` argument in `geom_histogram()` do? + +4. Make a histogram of the `carat` variable in the `diamonds` dataset. + Experiment with different binwidths. + What binwidth reveals the most interesting patterns? + +## Visualizing relationships + +To visualize a relationship we need to have at least two variables mapped to aesthetics of a plot. +In the following sections you will learn about commonly used plots for visualizing relationships between two or more variables and the geoms used for creating them. + +### A numerical and a categorical variable + +To visualize the relationship between a numerical and a categorical variable we can use side-by-side box plots. +A **boxplot** is a type of visual shorthand for a distribution of values that is popular among statisticians. +Each boxplot consists of: + +- A box that stretches from the 25th percentile of the distribution to the 75th percentile, a distance known as the interquartile range (IQR). + In the middle of the box is a line that displays the median, i.e. 50th percentile, of the distribution. + These three lines give you a sense of the spread of the distribution and whether or not the distribution is symmetric about the median or skewed to one side. + +- Visual points that display observations that fall more than 1.5 times the IQR from either edge of the box. + These outlying points are unusual so are plotted individually. + +- A line (or whisker) that extends from each end of the box and goes to the farthest non-outlier point in the distribution. + +```{r} +#| echo: false +#| fig-alt: > +#| A diagram depicting how a boxplot is created following the steps outlined +#| above. + +knitr::include_graphics("images/EDA-boxplot.png") +``` + +Let's take a look at the distribution of price by cut using `geom_boxplot()`: + +```{r} +#| warning: false +#| fig-alt: > +#| Side-by-side box plots of distributions of body masses of Adelie, +#| Chinstrap, and Gentoo penguins. The distribution of Adelie and +#| Chinstrap penguins' body masses appear to be symmetric with +#| medians around 3750 grams. The median body mass of Gentoo penguins +#| is much higher, around 5000 grams, and the distribution of the +#| body masses of these penguins appears to be somewhat right skewed. + +ggplot(penguins, aes(x = species, y = body_mass_g)) + + geom_boxplot() +``` + +Alternatively, we can make frequency polygons with `geom_freqpoly()`. +`geom_freqpoly()` performs the same calculation as `geom_histogram()`, but instead of displaying the counts with bars, it uses lines instead. +It's much easier to understand overlapping lines than bars of `geom_histogram()`. +There are a few challenges with this type of plot, which we will come back to in @sec-cat-num on exploring the covariation between a categorical and a numerical variable. + +```{r} +#| warning: false +#| fig-alt: > +#| A frequency polygon of body masses of penguins by species of +#| penguins. Each species (Adelie, Chinstrap, and Gentoo) is +#| represented with different colored outlines for the polygons. + +ggplot(penguins, aes(x = body_mass_g, color = species)) + + geom_freqpoly(binwidth = 200, linewidth = 0.75) +``` + +We've also customized the thickness of the lines using the `linewidth` argument in order to make them stand out a bit more against the background. + +We can also use overlaid density plots, with `species` mapped to both `color` and `fill` aesthetics and using the `alpha` aesthetic to add transparency to the filled density curves. +This aesthetic takes values between 0 (completely transparent) and 1 (completely opaque). +In the following plot it's *set* to 0.5. + +```{r} +#| warning: false +#| fig-alt: > +#| A frequency polygon of body masses of penguins (on the left) and density +#| plot (on the right). Each species of penguins (Adelie, Chinstrap, and +#| Gentoo) are represented in different colored outlines for the frequency +#| polygons and the density curves. The density curves are also filled with +#| the same colors, with some transparency added. + +ggplot(penguins, aes(x = body_mass_g, color = species, fill = species)) + + geom_density(alpha = 0.5) +``` + +Note the terminology we have used here: + +- We *map* variables to aesthetics if we want the visual attribute represented by that aesthetic to vary based on the values of that variable. +- Otherwise, we *set* the value of an aesthetic. + +### Two categorical variables + +We can use segmented bar plots to visualize the distribution between two categorical variables. +In creating this bar chart, we map the variable we want to divide the data into first to the `x` aesthetic and the variable we then further want to divide each group into to the `fill` aesthetic. + +Below are two segmented bar plots, both displaying the relationship between `island` and `species`, or specifically, visualizing the distribution of `species` within each island. +The plot on the left shows the frequencies of each species of penguins on each island and the plot on the right shows the relative frequencies (proportions) of each species within each island (despite the incorrectly labeled y-axis that says "count"). +The relative frequency plot, created by setting `position = "fill"` in the geom is more useful for comparing species distributions across islands since it's not affected by the unequal numbers of penguins across the islands. +Based on the plot on the left, we can see that Gentoo penguins all live on Biscoe island and make up roughly 75% of the penguins on that island, Chinstrap all live on Dream island and make up roughly 50% of the penguins on that island, and Adelie live on all three islands and make up all of the penguins on Torgersen. + +```{r} +#| fig-alt: > +#| Bar plots of penguin species by island (Biscoe, Dream, and Torgersen). +#| On the right, frequencies of species are shown. On the left, relative +#| frequencies of species are shown. + +ggplot(penguins, aes(x = island, fill = species)) + + geom_bar() +ggplot(penguins, aes(x = island, fill = species)) + + geom_bar(position = "fill") +``` + +### Two numerical variables + +So far you've learned about scatterplots (created with `geom_point()`) and smooth curves (created with `geom_smooth()`) for visualizing the relationship between two numerical variables. +A scatterplot is probably the most commonly used plot for visualizing the relationship between two variables. + +```{r} +#| warning: false +#| fig-alt: > +#| A scatterplot of body mass vs. flipper length of penguins. The plot +#| displays a positive, linear, relatively strong relationship between +#| these two variables. + +ggplot(penguins, aes(x = flipper_length_mm, y = body_mass_g)) + + geom_point() +``` + +### Three or more variables + +One way to add additional variables to a plot is by mapping them to an aesthetic. +For example, in the following scatterplot the colors of points represent species and the shapes of points represent islands. + +```{r} +#| warning: false +#| fig-alt: > +#| A scatterplot of body mass vs. flipper length of penguins. The plot +#| displays a positive, linear, relatively strong relationship between +#| these two variables. The points are colored based on the species of the +#| penguins and the shapes of the points represent islands (round points are +#| Biscoe island, triangles are Dream island, and squared are Torgersen +#| island). The plot is very busy and it's difficult to distinguish the shapes +#| of the points. + +ggplot(penguins, aes(x = flipper_length_mm, y = body_mass_g)) + + geom_point(aes(color = species, shape = island)) +``` + +However adding too many aesthetic mappings to a plot makes it cluttered and difficult to make sense of. +Another way, which is particularly useful for categorical variables, is to split your plot into **facets**, subplots that each display one subset of the data. + +To facet your plot by a single variable, use `facet_wrap()`. +The first argument of `facet_wrap()` is a formula[^data-visualize-2], which you create with `~` followed by a variable name. +The variable that you pass to `facet_wrap()` should be categorical. + +[^data-visualize-2]: Here "formula" is the name of the type of thing created by `~`, not a synonym for "equation". + +```{r} +#| warning: false +#| fig-width: 8 +#| fig-asp: 0.33 +#| fig-alt: > +#| A scatterplot of body mass vs. flipper length of penguins. The shapes and +#| colors of points represent species. Penguins from each island are on a +#| separate facet. Within each facet, the relationship between body mass and +#| flipper length is positive, linear, relatively strong. + +ggplot(penguins, aes(x = flipper_length_mm, y = body_mass_g)) + + geom_point(aes(color = species, shape = species)) + + facet_wrap(~island) +``` + +You will learn about many other geoms for visualizing distributions of variables and relationships between them in @sec-layers. + +### Exercises + +1. Which variables in `mpg` are categorical? Which variables are continuous? (Hint: type `?mpg` to read the documentation for the dataset). How can you see this information when you run `mpg`? -3. Map a continuous variable to `color`, `size`, and `shape`. - How do these aesthetics behave differently for categorical vs. continuous variables? +2. Make a scatterplot of `hwy` vs. `displ` using the `mpg` data frame. + Then, map a third, numerical variable to `color`, `size`, and `shape`. + How do these aesthetics behave differently for categorical vs. numerical variables? + +3. In the scatterplot of `hwy` vs. `displ`, what happens if you map a third variable to `linewidth`? 4. What happens if you map the same variable to multiple aesthetics? -5. What does the `stroke` aesthetic do? - What shapes does it work with? - (Hint: use `?geom_point`) +5. Make a scatterplot of `bill_depth_mm` vs. `bill_length_mm` and color the points by `species`. + What does adding coloring by species reveal about the relationship between these two variables? -6. What happens if you map an aesthetic to something other than a variable name, like `aes(color = displ < 5)`? - Note, you'll also need to specify x and y. +6. Why does the following yield two separate legends. + How would you fix it to combine the two legends? + + ```{r} + #| warning: false + #| fig-alt: > + #| Scatterplot of bill depth vs. bill length where different color and + #| shape pairings represent each species. The plot has two legends, + #| one labelled "species" which shows the shape scale and the other + #| that shows the color scale. + + ggplot(data = penguins, + mapping = aes(x = bill_length_mm, y = bill_depth_mm, + color = species, shape = species)) + + geom_point() + + labs(color = "Species") + ``` + +## Saving your plots {#sec-ggsave} + +Once you've made a plot, you might want to get it out of R by saving it as an image that you can use elsewhere. +That's the job of `ggsave()`, which will save the most recent plot to disk: + +```{r} +#| fig-show: hide + +ggplot(penguins, aes(x = flipper_length_mm, y = body_mass_g)) + + geom_point() +ggsave(filename = "my-plot.png") +``` + +```{r} +#| include: false + +file.remove("my-plot.png") +``` + +This will save your plot to your working directory, a concept you'll learn more about in @sec-workflow-scripts. + +If you don't specify the `width` and `height` they will be taken from the dimensions of the current plotting device. +For reproducible code, you'll want to specify them. +You can learn more about `ggsave()` in the documentation. + +Generally, however, we recommend that you assemble your final reports using Quarto, a reproducible authoring system that allows you to interleave your code and your prose and automatically include your plots in your write-ups. +You will learn more about Quarto in @sec-quarto. + +### Exercises + +1. Run the following lines of code. + Which of the two plots is saved as `mpg-plot.png`? + Why? + + ```{r} + #| eval: false + + ggplot(mpg, aes(x = class)) + + geom_bar() + ggplot(mpg, aes(x = cty, y = hwy)) + + geom_point() + ggsave("mpg-plot.png") + ``` + +2. What do you need to change in the code above to save the plot as a PDF instead of a PNG? ## Common problems @@ -376,7 +825,9 @@ In this case, it's usually easy to start from scratch again by pressing ESCAPE t One common problem when creating ggplot2 graphics is to put the `+` in the wrong place: it has to come at the end of the line, not the start. In other words, make sure you haven't accidentally written code like this: -``` r +```{r} +#| eval: false + ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy)) ``` @@ -390,933 +841,14 @@ Sometimes the answer will be buried there! But when you're new to R, even if the answer is in the error message, you might not yet know how to understand it. Another great tool is Google: try googling the error message, as it's likely someone else has had the same problem, and has gotten help online. -## Facets - -One way to add additional variables to a plot is by mapping them to an aesthetic. -Another way, which is particularly useful for categorical variables, is to split your plot into **facets**, subplots that each display one subset of the data. - -To facet your plot by a single variable, use `facet_wrap()`. -The first argument of `facet_wrap()` is a formula[^data-visualize-1], which you create with `~` followed by a variable name. -The variable that you pass to `facet_wrap()` should be discrete. - -[^data-visualize-1]: Here "formula" is the name of the type of thing created by `~`, not a synonym for "equation". - -```{r} -#| fig-alt: > -#| Scatterplot of highway fuel efficiency versus engine size of cars, -#| faceted by class, with facets spanning two rows. - -ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy)) + - facet_wrap(~cyl) -``` - -To facet your plot with the combination of two variables, switch from `facet_wrap()` to `facet_grid()`. -The first argument of `facet_grid()` is also a formula, but now it's a double sided formula: `rows ~ cols`. - -```{r} -#| fig-alt: > -#| Scatterplot of highway fuel efficiency versus engine size of cars, faceted -#| by number of cylinders across rows and by type of drive train across -#| columns. This results in a 4x3 grid of 12 facets. Some of these facets have -#| no observations: 5 cylinders and 4 wheel drive, 4 or 5 cylinders and front -#| wheel drive. - -ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy)) + - facet_grid(drv ~ cyl) -``` - -### Exercises - -1. What happens if you facet on a continuous variable? - -2. What do the empty cells in plot with `facet_grid(drv ~ cyl)` mean? - How do they relate to this plot? - - ```{r} - #| fig-alt: > - #| Scatterplot of number of cycles versus type of drive train of cars. - #| The plot shows that there are no cars with 5 cylinders that are 4 - #| wheel drive or with 4 or 5 cylinders that are front wheel drive. - - ggplot(data = mpg) + - geom_point(mapping = aes(x = drv, y = cyl)) - ``` - -3. What plots does the following code make? - What does `.` do? - - ```{r} - #| eval: false - - ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy)) + - facet_grid(drv ~ .) - - ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy)) + - facet_grid(. ~ cyl) - ``` - -4. Take the first faceted plot in this section: - - ```{r} - #| eval: false - - ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy)) + - facet_wrap(~ class, nrow = 2) - ``` - - What are the advantages to using faceting instead of the color aesthetic? - What are the disadvantages? - How might the balance change if you had a larger dataset? - -5. Read `?facet_wrap`. - What does `nrow` do? - What does `ncol` do? - What other options control the layout of the individual panels? - Why doesn't `facet_grid()` have `nrow` and `ncol` arguments? - -6. Which of the following two plots makes it easier to compare engine size (`displ`) across cars with different drive trains? - What does this say about when to place a faceting variable across rows or columns? - - ```{r} - #| fig-alt: > - #| Two faceted plots, both visualizing highway fuel efficiency versus - #| engine size of cars, faceted by drive train. In the top plot, facet - #| are organized across rows and in the second, across columns. - - ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy)) + - facet_grid(drv ~ .) - - ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy)) + - facet_grid(. ~ drv) - ``` - -7. Recreate this plot using `facet_wrap()` instead of `facet_grid()`. - How do the positions of the facet labels change? - - ```{r} - #| fig-alt: > - #| Scatterplot of highway fuel efficiency versus engine size of cars, - #| faceted by type of drive train across rows. - - ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy)) + - facet_grid(drv ~ .) - ``` - -## Geometric objects - -How are these two plots similar? - -```{r} -#| echo: false -#| message: false -#| layout-ncol: 2 -#| fig-width: 4 -#| fig-height: 2 -#| fig-alt: > -#| There are two plots. The plot on the left is a scatterplot of highway fuel -#| efficiency versus engine size of cars and the plot on the right shows a -#| smooth curve that follows the trajectory of the relationship between these -#| variables. A confidence interval around the smooth curve is also displayed. - -ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy)) - -ggplot(data = mpg) + - geom_smooth(mapping = aes(x = displ, y = hwy)) -``` - -Both plots contain the same x variable, the same y variable, and both describe the same data. -But the plots are not identical. -Each plot uses a different visual object to represent the data. -In ggplot2 syntax, we say that they use different **geoms**. - -A **geom** is the geometrical object that a plot uses to represent data. -People often describe plots by the type of geom that the plot uses. -For example, bar charts use bar geoms, line charts use line geoms, boxplots use boxplot geoms, and so on. -Scatterplots break the trend; they use the point geom. -As we see above, you can use different geoms to plot the same data. -The plot on the left uses the point geom, and the plot on the right uses the smooth geom, a smooth line fitted to the data. - -To change the geom in your plot, change the geom function that you add to `ggplot()`. -For instance, to make the plots above, you can use this code: - -```{r} -#| eval: false - -# Left -ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy)) - -# Right -ggplot(data = mpg) + - geom_smooth(mapping = aes(x = displ, y = hwy)) -``` - -Every geom function in ggplot2 takes a `mapping` argument. -However, not every aesthetic works with every geom. -You could set the shape of a point, but you couldn't set the "shape" of a line. -On the other hand, you *could* set the linetype of a line. -`geom_smooth()` will draw a different line, with a different linetype, for each unique value of the variable that you map to linetype. - -```{r} -#| message: false -#| fig-alt: > -#| A plot of highway fuel efficiency versus engine size of cars. The data are -#| represented with smooth curves, which use a different line type (solid, -#| dashed, or long dashed) for each type of drive train. Confidence intervals -#| around the smooth curves are also displayed. - -ggplot(data = mpg) + - geom_smooth(mapping = aes(x = displ, y = hwy, linetype = drv)) -``` - -Here, `geom_smooth()` separates the cars into three lines based on their `drv` value, which describes a car's drive train. -One line describes all of the points that have a `4` value, one line describes all of the points that have an `f` value, and one line describes all of the points that have an `r` value. -Here, `4` stands for four-wheel drive, `f` for front-wheel drive, and `r` for rear-wheel drive. - -If this sounds strange, we can make it more clear by overlaying the lines on top of the raw data and then coloring everything according to `drv`. - -```{r} -#| echo: false -#| message: false -#| fig-alt: > -#| A plot of highway fuel efficiency versus engine size of cars. The data -#| are represented with points (colored by drive train) as well as smooth -#| curves (where line type is determined based on drive train as well). -#| Confidence intervals around the smooth curves are also displayed. - -ggplot(data = mpg, mapping = aes(x = displ, y = hwy, color = drv)) + - geom_point() + - geom_smooth(mapping = aes(linetype = drv)) -``` - -Notice that this plot contains two geoms in the same graph! -If this makes you excited, buckle up. -You will learn how to place multiple geoms in the same plot very soon. - -ggplot2 provides more than 40 geoms, and extension packages provide even more (see for a sampling). -The best way to get a comprehensive overview is the ggplot2 cheatsheet, which you can find at . -To learn more about any single geom, use the help (e.g. `?geom_smooth`). - -Many geoms, like `geom_smooth()`, use a single geometric object to display multiple rows of data. -For these geoms, you can set the `group` aesthetic to a categorical variable to draw multiple objects. -ggplot2 will draw a separate object for each unique value of the grouping variable. -In practice, ggplot2 will automatically group the data for these geoms whenever you map an aesthetic to a discrete variable (as in the `linetype` example). -It is convenient to rely on this feature because the `group` aesthetic by itself does not add a legend or distinguishing features to the geoms. - -```{r} -#| layout-ncol: 3 -#| fig-width: 3 -#| fig-height: 3 -#| message: false -#| fig-alt: > -#| Three plots, each with highway fuel efficiency on the y-axis and engine -#| size of cars, where data are represented by a smooth curve. The first plot -#| only has these two variables, the center plot has three separate smooth -#| curves for each level of drive train, and the right plot not only has the -#| same three separate smooth curves for each level of drive train but these -#| curves are plotted in different colors, without a legend explaining which -#| color maps to which level. Confidence intervals around the smooth curves -#| are also displayed. - -ggplot(data = mpg) + - geom_smooth(mapping = aes(x = displ, y = hwy)) - -ggplot(data = mpg) + - geom_smooth(mapping = aes(x = displ, y = hwy, group = drv)) - -ggplot(data = mpg) + - geom_smooth( - mapping = aes(x = displ, y = hwy, color = drv), - show.legend = FALSE - ) -``` - -To display multiple geoms in the same plot, add multiple geom functions to `ggplot()`: - -```{r} -#| message: false -#| fig-alt: > -#| Scatterplot of highway fuel efficiency versus engine size of cars with a -#| smooth curve overlaid. A confidence interval around the smooth curves is -#| also displayed. - -ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy)) + - geom_smooth(mapping = aes(x = displ, y = hwy)) -``` - -This, however, introduces some duplication in our code. -Imagine if you wanted to change the y-axis to display `cty` instead of `hwy`. -You'd need to change the variable in two places, and you might forget to update one. -You can avoid this type of repetition by passing a set of mappings to `ggplot()`. -ggplot2 will treat these mappings as global mappings that apply to each geom in the graph. -In other words, this code will produce the same plot as the previous code: - -```{r} -#| eval: false - -ggplot(data = mpg, mapping = aes(x = displ, y = hwy)) + - geom_point() + - geom_smooth() -``` - -If you place mappings in a geom function, ggplot2 will treat them as local mappings for the layer. -It will use these mappings to extend or overwrite the global mappings *for that layer only*. -This makes it possible to display different aesthetics in different layers. - -```{r} -#| message: false -#| fig-alt: > -#| Scatterplot of highway fuel efficiency versus engine size of cars, where -#| points are colored according to the car class. A smooth curve following -#| the trajectory of the relationship between highway fuel efficiency versus -#| engine size of cars is overlaid along with a confidence interval around it. - -ggplot(data = mpg, mapping = aes(x = displ, y = hwy)) + - geom_point(mapping = aes(color = class)) + - geom_smooth() -``` - -You can use the same idea to specify different `data` for each layer. -Here, our smooth line displays just a subset of the `mpg` dataset, the subcompact cars. -The local data argument in `geom_smooth()` overrides the global data argument in `ggplot()` for that layer only. - -```{r} -#| message: false -#| fig-alt: > -#| Scatterplot of highway fuel efficiency versus engine size of cars, where -#| points are colored according to the car class. A smooth curve following -#| the trajectory of the relationship between highway fuel efficiency versus -#| engine size of subcompact cars is overlaid along with a confidence interval -#| around it. - -ggplot(data = mpg, mapping = aes(x = displ, y = hwy)) + - geom_point(mapping = aes(color = class)) + - geom_smooth(data = filter(mpg, class == "subcompact"), se = FALSE) -``` - -(You'll learn how `filter()` works in the chapter on data transformations: for now, just know that this command selects only the subcompact cars.) - -### Exercises - -1. What geom would you use to draw a line chart? - A boxplot? - A histogram? - An area chart? - -2. Run this code in your head and predict what the output will look like. - Then, run the code in R and check your predictions. - - ```{r} - #| eval: false - - ggplot(data = mpg, mapping = aes(x = displ, y = hwy, color = drv)) + - geom_point() + - geom_smooth(se = FALSE) - ``` - -3. Earlier in this chapter we used `show.legend` without explaining it: - - ```{r} - #| eval: false - ggplot(data = mpg) + - geom_smooth( - mapping = aes(x = displ, y = hwy, color = drv), - show.legend = FALSE - ) - ``` - - What does `show.legend = FALSE` do here? - What happens if you remove it? - Why do you think we used it earlier? - -4. What does the `se` argument to `geom_smooth()` do? - -5. Will these two graphs look different? - Why/why not? - - ```{r} - #| eval: false - - ggplot(data = mpg, mapping = aes(x = displ, y = hwy)) + - geom_point() + - geom_smooth() - - ggplot() + - geom_point(data = mpg, mapping = aes(x = displ, y = hwy)) + - geom_smooth(data = mpg, mapping = aes(x = displ, y = hwy)) - ``` - -6. Recreate the R code necessary to generate the following graphs. - Note that wherever a categorical variable is used in the plot, it's `drv`. - - ```{r} - #| echo: false - #| message: false - #| layout-ncol: 2 - #| fig-width: 4 - #| fig-height: 2 - #| fig-alt: > - #| There are six scatterplots in this figure, arranged in a 3x2 grid. - #| In all plots highway fuel efficiency of cars are on the y-axis and - #| engine size is on the x-axis. The first plot shows all points in black - #| with a smooth curve overlaid on them. In the second plot points are - #| also all black, with separate smooth curves overlaid for each level of - #| drive train. On the third plot, points and the smooth curves are - #| represented in different colors for each level of drive train. In the - #| fourth plot the points are represented in different colors for each - #| level of drive train but there is only a single smooth line fitted to - #| the whole data. In the fifth plot, points are represented in different - #| colors for each level of drive train, and a separate smooth curve with - #| different line types are fitted to each level of drive train. And - #| finally in the sixth plot points are represented in different colors - #| for each level of drive train and they have a thick white border. - - ggplot(data = mpg, mapping = aes(x = displ, y = hwy)) + - geom_point() + - geom_smooth(se = FALSE) - ggplot(data = mpg, mapping = aes(x = displ, y = hwy)) + - geom_smooth(aes(group = drv), se = FALSE) + - geom_point() - ggplot(data = mpg, mapping = aes(x = displ, y = hwy, color = drv)) + - geom_point() + - geom_smooth(se = FALSE) - ggplot(data = mpg, mapping = aes(x = displ, y = hwy)) + - geom_point(aes(color = drv)) + - geom_smooth(se = FALSE) - ggplot(data = mpg, mapping = aes(x = displ, y = hwy)) + - geom_point(aes(color = drv)) + - geom_smooth(aes(linetype = drv), se = FALSE) - ggplot(data = mpg, mapping = aes(x = displ, y = hwy)) + - geom_point(size = 4, color = "white") + - geom_point(aes(color = drv)) - ``` - -## Statistical transformations - -Next, let's take a look at a bar chart. -Bar charts seem simple, but they are interesting because they reveal something subtle about plots. -Consider a basic bar chart, as drawn with `geom_bar()` or `geom_col()`. -The following chart displays the total number of diamonds in the `diamonds` dataset, grouped by `cut`. -The `diamonds` dataset is in the ggplot2 package and contains information on \~54,000 diamonds, including the `price`, `carat`, `color`, `clarity`, and `cut` of each diamond. -The chart shows that more diamonds are available with high quality cuts than with low quality cuts. - -```{r} -#| fig-alt: > -#| Bar chart of number of each cut of diamond. There are roughly 1500 -#| Fair, 5000 Good, 12000 Very Good, 14000 Premium, and 22000 Ideal cut -#| diamonds. - -ggplot(data = diamonds) + - geom_bar(mapping = aes(x = cut)) -``` - -On the x-axis, the chart displays `cut`, a variable from `diamonds`. -On the y-axis, it displays count, but count is not a variable in `diamonds`! -Where does count come from? -Many graphs, like scatterplots, plot the raw values of your dataset. -Other graphs, like bar charts, calculate new values to plot: - -- bar charts, histograms, and frequency polygons bin your data and then plot bin counts, the number of points that fall in each bin. - -- smoothers fit a model to your data and then plot predictions from the model. - -- boxplots compute a robust summary of the distribution and then display that summary as a specially formatted box. - -The algorithm used to calculate new values for a graph is called a **stat**, short for statistical transformation. -@fig-vis-stat-bar shows how this process works with `geom_bar()`. - -```{r} -#| label: fig-vis-stat-bar -#| echo: false -#| out-width: "100%" -#| fig-cap: > -#| When create a bar chart we first start with the raw data, then -#| aggregate it to count the number of observations in each bar, -#| and finally map those computed variables to plot aesthetics. -#| fig-alt: > -#| A figure demonstrating three steps of creating a bar chart. -#| Step 1. geom_bar() begins with the diamonds data set. Step 2. geom_bar() -#| transforms the data with the count stat, which returns a data set of -#| cut values and counts. Step 3. geom_bar() uses the transformed data to -#| build the plot. cut is mapped to the x-axis, count is mapped to the y-axis. - -knitr::include_graphics("images/visualization-stat-bar.png") -``` - -You can learn which stat a geom uses by inspecting the default value for the `stat` argument. -For example, `?geom_bar` shows that the default value for `stat` is "count", which means that `geom_bar()` uses `stat_count()`. -`stat_count()` is documented on the same page as `geom_bar()`. -If you scroll down, the section called "Computed variables" explains that it computes two new variables: `count` and `prop`. - -You can generally use geoms and stats interchangeably. -For example, you can recreate the previous plot using `stat_count()` instead of `geom_bar()`: - -```{r} -#| fig-alt: > -#| Bar chart of number of each cut of diamond. There are roughly 1500 -#| Fair, 5000 Good, 12000 Very Good, 14000 Premium, and 22000 Ideal cut -#| diamonds. - -ggplot(data = diamonds) + - stat_count(mapping = aes(x = cut)) -``` - -This works because every geom has a default stat; and every stat has a default geom. -This means that you can typically use geoms without worrying about the underlying statistical transformation. -However, there are three reasons why you might need to use a stat explicitly: - -1. You might want to override the default stat. - In the code below, we change the stat of `geom_bar()` from count (the default) to identity. - This lets me map the height of the bars to the raw values of a $y$ variable. - Unfortunately when people talk about bar charts casually, they might be referring to this type of bar chart, where the height of the bar is already present in the data, or the previous bar chart where the height of the bar is generated by counting rows. - - ```{r} - #| warning: false - #| fig-alt: > - #| Bar chart of number of each cut of diamond. There are roughly 1500 - #| Fair, 5000 Good, 12000 Very Good, 14000 Premium, and 22000 Ideal cut - #| diamonds. - - demo <- tribble( - ~cut, ~freq, - "Fair", 1610, - "Good", 4906, - "Very Good", 12082, - "Premium", 13791, - "Ideal", 21551 - ) - - ggplot(data = demo) + - geom_bar(mapping = aes(x = cut, y = freq), stat = "identity") - ``` - - (Don't worry that you haven't seen `<-` or `tribble()` before. - You might be able to guess their meaning from the context, and you'll learn exactly what they do soon!) - -2. You might want to override the default mapping from transformed variables to aesthetics. - For example, you might want to display a bar chart of proportions, rather than counts: - - ```{r} - #| fig-alt: > - #| Bar chart of proportion of each cut of diamond. Roughly, Fair - #| diamonds make up 0.03, Good 0.09, Very Good 0.22, Premium 26, and - #| Ideal 0.40. - - ggplot(data = diamonds) + - geom_bar(mapping = aes(x = cut, y = after_stat(prop), group = 1)) - ``` - - To find the variables computed by the stat, look for the section titled "computed variables" in the help for `geom_bar()`. - -3. You might want to draw greater attention to the statistical transformation in your code. - For example, you might use `stat_summary()`, which summarizes the y values for each unique x value, to draw attention to the summary that you're computing: - - ```{r} - #| fig-alt: > - #| A plot with depth on the y-axis and cut on the x-axis (with levels - #| fair, good, very good, premium, and ideal) of diamonds. For each level - #| of cut, vertical lines extend from minimum to maximum depth for diamonds - #| in that cut category, and the median depth is indicated on the line - #| with a point. - - ggplot(data = diamonds) + - stat_summary( - mapping = aes(x = cut, y = depth), - fun.min = min, - fun.max = max, - fun = median - ) - ``` - -ggplot2 provides more than 20 stats for you to use. -Each stat is a function, so you can get help in the usual way, e.g. `?stat_bin`. -To see a complete list of stats, try the [ggplot2 cheatsheet](https://rstudio.com/resources/cheatsheets). - -### Exercises - -1. What is the default geom associated with `stat_summary()`? - How could you rewrite the previous plot to use that geom function instead of the stat function? - -2. What does `geom_col()` do? - How is it different from `geom_bar()`? - -3. Most geoms and stats come in pairs that are almost always used in concert. - Read through the documentation and make a list of all the pairs. - What do they have in common? - -4. What variables does `stat_smooth()` compute? - What parameters control its behaviour? - -5. In our proportion bar chart, we need to set `group = 1`. - Why? - In other words, what is the problem with these two graphs? - - ```{r} - #| eval: false - - ggplot(data = diamonds) + - geom_bar(mapping = aes(x = cut, y = after_stat(prop))) - ggplot(data = diamonds) + - geom_bar(mapping = aes(x = cut, fill = color, y = after_stat(prop))) - ``` - -## Position adjustments - -There's one more piece of magic associated with bar charts. -You can color a bar chart using either the `color` aesthetic, or, more usefully, `fill`: - -```{r} -#| layout-ncol: 2 -#| fig-width: 4 -#| fig-height: 2 -#| fig-alt: > -#| Two bar charts of cut of diamonds. In the first plot, the bars have colored -#| borders. In the second plot, they're filled with colors. Heights of the -#| bars correspond to the number of diamonds in each cut category. - -ggplot(data = diamonds) + - geom_bar(mapping = aes(x = cut, color = cut)) -ggplot(data = diamonds) + - geom_bar(mapping = aes(x = cut, fill = cut)) -``` - -Note what happens if you map the fill aesthetic to another variable, like `clarity`: the bars are automatically stacked. -Each colored rectangle represents a combination of `cut` and `clarity`. - -```{r} -#| fig-alt: > -#| Segmented bar chart of cut of diamonds, where each bar is filled with -#| colors for the levels of clarity. Heights of the bars correspond to the -#| number of diamonds in each cut category, and heights of the colored -#| segments are proportional to the number of diamonds with a given clarity -#| level within a given cut level. - -ggplot(data = diamonds) + - geom_bar(mapping = aes(x = cut, fill = clarity)) -``` - -The stacking is performed automatically using the **position adjustment** specified by the `position` argument. -If you don't want a stacked bar chart, you can use one of three other options: `"identity"`, `"dodge"` or `"fill"`. - -- `position = "identity"` will place each object exactly where it falls in the context of the graph. - This is not very useful for bars, because it overlaps them. - To see that overlapping we either need to make the bars slightly transparent by setting `alpha` to a small value, or completely transparent by setting `fill = NA`. - - ```{r} - #| layout-ncol: 2 - #| fig-width: 4 - #| fig-height: 2 - #| fig-alt: > - #| Two segmented bar charts of cut of diamonds, where each bar is filled - #| with colors for the levels of clarity. Heights of the bars correspond - #| to the number of diamonds in each cut category, and heights of the - #| colored segments are proportional to the number of diamonds with a - #| given clarity level within a given cut level. However the segments - #| overlap. In the first plot the segments are filled with transparent - #| colors, in the second plot the segments are only outlined with colors. - - ggplot(data = diamonds, mapping = aes(x = cut, fill = clarity)) + - geom_bar(alpha = 1/5, position = "identity") - ggplot(data = diamonds, mapping = aes(x = cut, color = clarity)) + - geom_bar(fill = NA, position = "identity") - ``` - - The identity position adjustment is more useful for 2d geoms, like points, where it is the default. - -- `position = "fill"` works like stacking, but makes each set of stacked bars the same height. - This makes it easier to compare proportions across groups. - - ```{r} - #| fig-alt: > - #| Segmented bar chart of cut of diamonds, where each bar is filled with - #| colors for the levels of clarity. Height of each bar is 1 and heights - #| of the colored segments are proportional to the proportion of diamonds - #| with a given clarity level within a given cut level. - - ggplot(data = diamonds) + - geom_bar(mapping = aes(x = cut, fill = clarity), position = "fill") - ``` - -- `position = "dodge"` places overlapping objects directly *beside* one another. - This makes it easier to compare individual values. - - ```{r} - #| fig-alt: > - #| Dodged bar chart of cut of diamonds. Dodged bars are grouped by levels - #| of cut (fair, good, very good, premium, and ideal). In each group there - #| are eight bars, one for each level of clarity, and filled with a - #| different color for each level. Heights of these bars represent the - #| number of diamonds with a given level of cut and clarity. - - ggplot(data = diamonds) + - geom_bar(mapping = aes(x = cut, fill = clarity), position = "dodge") - ``` - -There's one other type of adjustment that's not useful for bar charts, but can be very useful for scatterplots. -Recall our first scatterplot. -Did you notice that the plot displays only 126 points, even though there are 234 observations in the dataset? - -```{r} -#| echo: false -#| fig-alt: > -#| Scatterplot of highway fuel efficiency versus engine size of cars that -#| shows a negative association. - -ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy)) -``` - -The underlying values of `hwy` and `displ` are rounded so the points appear on a grid and many points overlap each other. -This problem is known as **overplotting**. -This arrangement makes it difficult to see the distribution of the data. -Are the data points spread equally throughout the graph, or is there one special combination of `hwy` and `displ` that contains 109 values? - -You can avoid this gridding by setting the position adjustment to "jitter". -`position = "jitter"` adds a small amount of random noise to each point. -This spreads the points out because no two points are likely to receive the same amount of random noise. - -```{r} -#| fig-alt: > -#| Jittered scatterplot of highway fuel efficiency versus engine size of cars. -#| The plot shows a negative association. - -ggplot(data = mpg) + - geom_point(mapping = aes(x = displ, y = hwy), position = "jitter") -``` - -Adding randomness seems like a strange way to improve your plot, but while it makes your graph less accurate at small scales, it makes your graph *more* revealing at large scales. -Because this is such a useful operation, ggplot2 comes with a shorthand for `geom_point(position = "jitter")`: `geom_jitter()`. - -To learn more about a position adjustment, look up the help page associated with each adjustment: `?position_dodge`, `?position_fill`, `?position_identity`, `?position_jitter`, and `?position_stack`. - -### Exercises - -1. What is the problem with this plot? - How could you improve it? - - ```{r} - #| fig-alt: > - #| Scatterplot of highway fuel efficiency versus city fuel efficiency - #| of cars that shows a positive association. The number of points - #| visible in this plot is less than the number of points in the dataset. - - ggplot(data = mpg, mapping = aes(x = cty, y = hwy)) + - geom_point() - ``` - -2. What parameters to `geom_jitter()` control the amount of jittering? - -3. Compare and contrast `geom_jitter()` with `geom_count()`. - -4. What's the default position adjustment for `geom_boxplot()`? - Create a visualization of the `mpg` dataset that demonstrates it. - -## Coordinate systems - -Coordinate systems are probably the most complicated part of ggplot2. -The default coordinate system is the Cartesian coordinate system where the x and y positions act independently to determine the location of each point. -There are three other coordinate systems that are occasionally helpful. - -- `coord_flip()` switches the x and y axes. - This is useful (for example), if you want horizontal boxplots. - It's also useful for long labels: it's hard to get them to fit without overlapping on the x-axis. - - ```{r} - #| fig-width: 4 - #| fig-height: 2 - #| layout-ncol: 2 - #| fig-alt: > - #| Two side-by-side box plots of highway fuel efficiency of cars. A - #| separate box plot is created for cars in each level of class (2seater, - #| compact, midsize, minivan, pickup, subcompact, and suv). In the first - #| plot class is on the x-axis, in the second plot class is on the y-axis. - #| The second plot makes it easier to read the names of the levels of class - #| since they are listed down the y-axis, avoiding overlap. - - ggplot(data = mpg, mapping = aes(x = class, y = hwy)) + - geom_boxplot() - ggplot(data = mpg, mapping = aes(x = class, y = hwy)) + - geom_boxplot() + - coord_flip() - ``` - - However, note that you can achieve the same result by flipping the aesthetic mappings of the two variables. - - ```{r} - #| fig-alt: > - #| Side-by-side box plots of highway fuel efficiency of cars. A separate - #| box plot is drawn along the y-axis for cars in each level of class - #| (2seater, compact, midsize, minivan, pickup, subcompact, and suv). - - ggplot(data = mpg, mapping = aes(y = class, x = hwy)) + - geom_boxplot() - ``` - -- `coord_quickmap()` sets the aspect ratio correctly for maps. - This is very important if you're plotting spatial data with ggplot2. - We don't have the space to discuss maps in this book, but you can learn more in the [Maps chapter](https://ggplot2-book.org/maps.html) of *ggplot2: Elegant graphics for data analysis*. - - ```{r} - #| layout-ncol: 2 - #| fig-width: 4 - #| fig-height: 2 - #| message: false - #| fig-alt: > - #| Two maps of the boundaries of New Zealand. In the first plot the aspect - #| ratio is incorrect, in the second plot it is correct. - - nz <- map_data("nz") - - ggplot(nz, aes(long, lat, group = group)) + - geom_polygon(fill = "white", color = "black") - - ggplot(nz, aes(long, lat, group = group)) + - geom_polygon(fill = "white", color = "black") + - coord_quickmap() - ``` - -- `coord_polar()` uses polar coordinates. - Polar coordinates reveal an interesting connection between a bar chart and a Coxcomb chart. - - ```{r} - #| layout-ncol: 2 - #| fig-width: 4 - #| fig-asp: 1 - #| fig-alt: > - #| There are two plots. On the left is a bar chart of cut of diamonds, - #| on the right is a Coxcomb chart of the same data. - - bar <- ggplot(data = diamonds) + - geom_bar( - mapping = aes(x = cut, fill = cut), - show.legend = FALSE, - width = 1 - ) + - theme(aspect.ratio = 1) + - labs(x = NULL, y = NULL) - - bar + coord_flip() - bar + coord_polar() - ``` - -### Exercises - -1. Turn a stacked bar chart into a pie chart using `coord_polar()`. - -2. What does `labs()` do? - Read the documentation. - -3. What's the difference between `coord_quickmap()` and `coord_map()`? - -4. What does the plot below tell you about the relationship between city and highway mpg? - Why is `coord_fixed()` important? - What does `geom_abline()` do? - - ```{r} - #| fig-alt: > - #| Scatterplot of highway fuel efficiency versus engine size of cars that - #| shows a negative association. The plot also has a straight line that - #| follows the trend of the relationship between the variables but does not - #| go through the cloud of points, it is beneath it. - - ggplot(data = mpg, mapping = aes(x = cty, y = hwy)) + - geom_point() + - geom_abline() + - coord_fixed() - ``` - -## The layered grammar of graphics - -In the previous sections, you learned much more than just how to make scatterplots, bar charts, and boxplots. -You learned a foundation that you can use to make *any* type of plot with ggplot2. -To see this, let's add position adjustments, stats, coordinate systems, and faceting to our code template: - - ggplot(data = ) + - ( - mapping = aes(), - stat = , - position = - ) + - + - - -Our new template takes seven parameters, the bracketed words that appear in the template. -In practice, you rarely need to supply all seven parameters to make a graph because ggplot2 will provide useful defaults for everything except the data, the mappings, and the geom function. - -The seven parameters in the template compose the grammar of graphics, a formal system for building plots. -The grammar of graphics is based on the insight that you can uniquely describe *any* plot as a combination of a dataset, a geom, a set of mappings, a stat, a position adjustment, a coordinate system, and a faceting scheme. - -To see how this works, consider how you could build a basic plot from scratch: you could start with a dataset and then transform it into the information that you want to display (with a stat). - -```{r} -#| echo: false -#| fig-alt: > -#| A figure demonstrating the steps for going from raw data to table of counts -#| where each row represents one level of cut and a count column shows how many -#| diamonds are in that cut level. Steps 1 and 2 are annotated. Step 1. Begin -#| with the diamonds dataset. Step 2. Compute counts for each cut value -#| with stat_count(). - -knitr::include_graphics("images/visualization-grammar-1.png") -``` - -Next, you could choose a geometric object to represent each observation in the transformed data. -You could then use the aesthetic properties of the geoms to represent variables in the data. -You would map the values of each variable to the levels of an aesthetic. - -```{r} -#| echo: false -#| fig-alt: > -#| A figure demonstrating the steps for going from raw data to table of counts -#| where each row represents one level of cut and a count column shows how -#| many diamonds are in that cut level. Each level is also mapped to a color. -#| Steps 3 and 4 are annotated. Step 3. Represent each observation with a bar. -#| Step 4. Map the fill of each bar to the ..count.. variable. - -knitr::include_graphics("images/visualization-grammar-2.png") -``` - -You'd then select a coordinate system to place the geoms into, using the location of the objects (which is itself an aesthetic property) to display the values of the x and y variables. -At that point, you would have a complete graph, but you could further adjust the positions of the geoms within the coordinate system (a position adjustment) or split the graph into subplots (faceting). -You could also extend the plot by adding one or more additional layers, where each additional layer uses a dataset, a geom, a set of mappings, a stat, and a position adjustment. - -```{r} -#| echo: false -#| fig-alt: > -#| A figure demonstrating the steps for going from raw data to bar chart where -#| each bar represents one level of cut and filled in with a different color. -#| Steps 5 and 6 are annotated. Step 5. Place geoms in a Cartesian coordinate -#| system. Step 6. Map the y values to ..count.. and the x values to cut. - -knitr::include_graphics("images/visualization-grammar-3.png") -``` - -You could use this method to build *any* plot that you imagine. -In other words, you can use the code template that you've learned in this chapter to build hundreds of thousands of unique plots. - -If you'd like to learn more about this theoretical underpinnings of ggplot2, you might enjoy reading "[The Layered Grammar of Graphics](https://vita.had.co.nz/papers/layered-grammar.pdf)", the scientific paper that describes the theory of ggplot2 in detail. - ## Summary -In this chapter, you've learn the basics of data visualization with ggplot2. +In this chapter, you've learned the basics of data visualization with ggplot2. We started with the basic idea that underpins ggplot2: a visualization is a mapping from variables in your data to aesthetic properties like position, colour, size and shape. -You then learned about facets, which allow you to create small multiples, where each panel contains a subgroup from your data. -We then gave you a whirlwind tour of the geoms and stats which control the "type" of graph you get, whether it's a scatterplot, line plot, histogram, or something else. -Position adjustment control the fine details of position when geoms might otherwise overlap, and coordinate systems allow you fundamentally change what `x` and `y` mean. +You then learned about increasing the complexity and improving the presentation of your plots layer-by-layer. +You also learned about commonly used plots for visualizing the distribution of a single variable as well as for visualizing relationships between two or more variables, by levering additional aesthetic mappings and/or splitting your plot into small multiples using faceting. -We'll use visualizations again and again through out this book, introducing new techniques as we need them. -If you want to get a comprehensive understand of ggplot2, we recommend reading the book, [*ggplot2: Elegant Graphics for Data Analysis*](https://ggplot2-book.org). -Other useful resources are the [*R Graphics Cookbook*](https://r-graphics.org) by Winston Chang and [*Fundamentals of Data Visualization*](https://clauswilke.com/dataviz/) by Claus Wilke. +We'll use visualizations again and again through out this book, introducing new techniques as we need them as well as do a deeper dive into creating visualizations with ggplot2 in @sec-layers through @sec-eda. With the basics of visualization under your belt, in the next chapter we're going to switch gears a little and give you some practical workflow advice. We intersperse workflow advice with data science tools throughout this part of the book because it'll help you stay organize as you write increasing amounts of R code. diff --git a/diagrams/data-science.graffle b/diagrams/data-science.graffle index a91b1fb1c260f3f6be7d8e8aa7ffa0af7795cf3b..aff62291e0124bdce38af02deefa909b2e949d1e 100644 GIT binary patch delta 17618 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 F006G?c|HID delta 15720 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 O;Kb0SE#TiP)c+68%eTV- diff --git a/diagrams/data-science/communicate.png b/diagrams/data-science/communicate.png index 7ba42b918eef8d7dd2c2da64b9bad476acfb3315..ea91ed2b817853735e595946a3983f3e6f028765 100644 GIT binary patch literal 49428 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 M*=e9j(l`+Mf1ue{X8-^I literal 49182 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 diff --git a/diagrams/data-science/visualize.png b/diagrams/data-science/visualize.png new file mode 100644 index 0000000000000000000000000000000000000000..b090dc8e96c39a82119632dffb75b7c81ae5fcfd GIT binary patch literal 47266 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

ervwk+DiHmwYPR5=h;{M7Rg< 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

s`rjUE_#6@|LYj<>>zP?#pD0%f8+v_`Gj zO9x<@!<6V+lb^Kh;sc!Jhmip;FAe`=brAzZ3nVKra*= z=rY0g*cSAot9}p?oREQ{P!s0CRlxsa0XWZ~C=?24v+pNipg-2`g-Kswt~p#I_y1!7 z&y=B0fYUb|``rZ0A3vEg2NXwBtz#Uz{!Taj(bnH6+&LXb0hsR-=`-N0=|Pm>^QCnya&+6)DD&f*j;q-TdiAax30t~w4)CbmlR)6_& zap4~yPcxJvNAE$wRDgwq4)6}fV_vxqCB&xl^2Ek)8eU)occ=MFMFa&)!aA}cVQ=cS zbxOq}DZ;`W*iyB<&{Ce=goT3}%(eNhRsL^Vz;6R=@{^r$K0`P@RQ-Eff+s81Rd_7s|@3Sa={I4et zRQoiAR-XQ&XMcSCzf{913042FD8rw&-@Dcno^$i8ptT2g$F^nn=CseSIo37xcB9$@_j%4X zH^cLqHk;y?ZXh~CB)}Iiu<%G2Wb))>ZCYOX0S|urDd_p1d=XTFg>9DUO^p9fF8;?g zg1(*)ED?gpzt#JnRRoolK}G_f9261Tppbz*TR|Jp5Mn%>(7gOwv{8LiO zNJwDSbbN}Rs0f2>BnH|RN|hT_KPC0w&ib=M|JzxAn(F_zmQ_vPg*xcdrfagBS90oD zl%^R>zYV!!ElBP<$V(Ya8$S>zsRmmymn1hu$fjvCl zIeN&6Q-hKouv*4AH8hFdtHy8~nyCGWCI-+|@+nZX-cB(Zd7zP@wBNs*T z=5T1lLSH#>bj3oIKKEm9fFUpF$?--hOld47DJ_>{3HmDBoME6HySvAJOSN+2k0QmRD*wb+CRT| zMZkhc%^zuGW){M0?jO9lOi*fH`?P!~Wa;iSxs4j`FVTLZI@MGFxoK`MBFd>Q=T-jr z<#@{j_1-UQ6!w~BHgCw053uv)l%YUre6d(A8g#^{QNaxqY*D*DP%6ut`O_f(&S_!@ zL0d-{k2*hNfuE~>*EclQjx%je%7_WbTc5j=7Z_d+M98i6exama$EV zmehBYKlG)7@LrRPcl5&KRmvi*OLBD_9ODa37w-!8FlvAfAe-xr>$=|BUq-_;gVc3& zWH%>=bF~B@>iupfY_IC(UJ()!Zg+(qZkWtuOg2`h1vFaSUD=)7Xl3jq*60rvm*(mm ziq1j|0h5yNcg`%Do#@Oh53^mHn&evIG@hkTnC8&O>&oc9w{?%}LsQtD*_=FY_0Oqp zslv)k)u8*Fn$)b+nX09wmE;EN`1prI7MT)EYg>|u0b}r=o&4{IZn9kHa05l_f__R! z2?l0Snh>Dzb)N9Uw*BW)SrFiz49>+=eo80-1qu9aR=xkH2GIaIvNpmh=E9#6>QPQl z*={7zRjnI;)uK~&)Ed1;N;`jker}^Zt6f?!x1Xz81iIJrK5*ogBl(m{g|$3k*N=Qt zhuf>q%*@2(f+n4=!7C8FnZMcQs<*YOHd)3>V-bwdU3g{_l0j;dT{)@{`RVMrk64=ioeD$Y?bS{9?1t6WBJhnNhjuiZocqH>(pdzNm>#m{{L*%|IV7ps-Z2hbxs@hQ$ie22Q$xY z%J=U||6hHQ0d+7UbrRM;CDZ_2MQlte?2`Y-ehgYX5+l^XH1Y-gcwqU<6ZgnK6{#*v z6a6m=_QQ$=jiD_uvadk&Q$qhWso!dBC7yA8+u8|Z2H^wf O=arbOXsPfU@Baam6U{9E diff --git a/images/visualization-grammar-2.png b/images/visualization-grammar-2.png deleted file mode 100644 index 4c7ee999730c99e8007de4f4ae6a7d9de0b17b1a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 168855 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

O)h<3qJLl8n^K4`4()s^tSr8 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 diff --git a/images/visualization-grammar-3.png b/images/visualization-grammar-3.png deleted file mode 100644 index dc7b51721a429ffced2f7dbd73a5141560d7e397..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 235902 zcmeFZXH-*Lw+3wYSW!_CsfvnHMWlq1;6Vhb(mN;!NJ#>O4k4n)LXChlsY;U?5fVBP zDG@@E-ix7x5=wvsLfRMg-uvBq&;7=D-#_24!x)UQ*{r?RUUSd6*7H1b?j8O>U-QJ# zi%0kD*>mE))?K4LdycN}*>k|^k3*a@Z*JvB@7c4L*HvBp!F_dg;RoJOXIBrWJ$tUl zIzD`8q$P3v+oLlNAAai;zj4&t-{|%0D5Hni?k`PW@L#$gwq<1`+t^HBI5pk0=fKU2 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%0AeZI)5$ijh3TrcO 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Ɂe>FZin~QLMN+gfS--Ao$DuPzfRyDB()dO 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 AEC2ui diff --git a/images/visualization-grammar.png b/images/visualization-grammar.png new file mode 100644 index 0000000000000000000000000000000000000000..f4e11c6394e66443551a69699797d3e9fdfe911c GIT binary patch literal 189361 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 v?44UWckWqNiGO7_{}OzesCrw`{#bUl "The greatest value of a picture is when it forces us to notice what we never expected to see." --- John Tukey + +The `mpg` data frame that is bundled with the ggplot2 package contains `r nrow(mpg)` observations collected by the US Environmental Protection Agency on `r mpg |> distinct(model) |> nrow()` car models. + +```{r} +mpg +``` + +Among the variables in `mpg` are: + +1. `displ`: A car's engine size, in liters. + A numerical variable. + +2. `hwy`: A car's fuel efficiency on the highway, in miles per gallon (mpg). + A car with a low fuel efficiency consumes more fuel than a car with a high fuel efficiency when they travel the same distance. + A numerical variable. + +3. `class`: Type of car. + A categorical variable. + +You can learn about `mpg` on its help page by running `?mpg`. + +Let's start by visualizing the relationship between `displ` and `hwy` for various `class`es of cars. +We can do this with a scatterplot where the numerical variables are mapped to the `x` and `y` aesthetics and the categorical variable is mapped to an aesthetic like `color` or `shape`. + +```{r} +#| layout-ncol: 2 +#| fig-width: 4 +#| fig-height: 2 +#| fig-alt: > +#| Two scatterplots next to each other, both visualizing highway fuel +#| efficiency versus engine size of cars and showing a negative +#| association. In the plot on the left class is mapped to the color +#| aesthetic, resulting in different colors for each class. +#| In the plot on the right class is mapped the shape aesthetic, +#| resulting in different plotting character shapes for each class, +#| except for suv. Each plot comes with a legend that shows the +#| mapping between color or shape and levels of the class variable. + +# Left +ggplot(mpg, aes(x = displ, y = hwy, color = class)) + + geom_point() + +# Right +ggplot(mpg, aes(x = displ, y = hwy, shape = class)) + + geom_point() +``` + +When `class` is mapped to `shape`, we get two warnings: + +> 1: The shape palette can deal with a maximum of 6 discrete values because more than 6 becomes difficult to discriminate; you have 7. +> Consider specifying shapes manually if you must have them. +> +> 2: Removed 62 rows containing missing values (`geom_point()`). + +Since ggplot2 will only use six shapes at a time, by default, additional groups will go unplotted when you use the shape aesthetic. +The second warning is related -- there are 62 SUVs in the dataset and they're not plotted. + +Similarly, we can map `class` to `size` or `alpha` (transparency) aesthetics as well. + +```{r} +#| layout-ncol: 2 +#| fig-width: 4 +#| fig-height: 2 +#| fig-alt: > +#| Two scatterplots next to each other, both visualizing highway fuel +#| efficiency versus engine size of cars and showing a negative +#| association. In the plot on the left class is mapped to the size +#| aesthetic, resulting in different sizes for each class. +#| In the plot on the right class is mapped the alpha aesthetic, +#| resulting in different alpha (transparency) levels for each class. +#| Each plot comes with a legend that shows the mapping between size +#| or alpha level and levels of the class variable. + +# Left +ggplot(mpg, aes(x = displ, y = hwy, size = class)) + + geom_point() + +# Right +ggplot(mpg, aes(x = displ, y = hwy, alpha = class)) + + geom_point() +``` + +Both of these produce warnings as well: + +> Using alpha for a discrete variable is not advised. + +Mapping a non-ordinal discrete (categorical) variable (`class`) to an ordered aesthetic (`size` or `alpha`) is generally not a good idea because it implies a ranking that does not in fact exist. + +Similarly, we could have mapped `class` to the `alpha` aesthetic, which controls the transparency of the points, or to the `shape` aesthetic, which controls the shape of the points. + +Once you map an aesthetic, ggplot2 takes care of the rest. +It selects a reasonable scale to use with the aesthetic, and it constructs a legend that explains the mapping between levels and values. +For x and y aesthetics, ggplot2 does not create a legend, but it creates an axis line with tick marks and a label. +The axis line acts as a legend; it explains the mapping between locations and values. + +You can also set the aesthetic properties of your geom manually. +For example, we can make all of the points in our plot blue: + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars +#| that shows a negative association. All points are blue. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(color = "blue") +``` + +Here, the color doesn't convey information about a variable, but only changes the appearance of the plot. +You can set an aesthetic manually by name as an argument of your geom function. +In other words, it goes *outside* of `aes()`. +You'll need to pick a value that makes sense for that aesthetic: + +- The name of a color as a character string. +- The size of a point in mm. +- The shape of a point as a number, as shown in @fig-shapes. + +```{r} +#| label: fig-shapes +#| echo: false +#| warning: false +#| fig.asp: 0.364 +#| fig-align: "center" +#| fig-cap: > +#| R has 25 built in shapes that are identified by numbers. There are some +#| seeming duplicates: for example, 0, 15, and 22 are all squares. The +#| difference comes from the interaction of the `color` and `fill` +#| aesthetics. The hollow shapes (0--14) have a border determined by `color`; +#| the solid shapes (15--20) are filled with `color`; the filled shapes +#| (21--24) have a border of `color` and are filled with `fill`. +#| fig-alt: > +#| Mapping between shapes and the numbers that represent them: 0 - square, +#| 1 - circle, 2 - triangle point up, 3 - plus, 4 - cross, 5 - diamond, +#| 6 - triangle point down, 7 - square cross, 8 - star, 9 - diamond plus, +#| 10 - circle plus, 11 - triangles up and down, 12 - square plus, +#| 13 - circle cross, 14 - square and triangle down, 15 - filled square, +#| 16 - filled circle, 17 - filled triangle point-up, 18 - filled diamond, +#| 19 - solid circle, 20 - bullet (smaller circle), 21 - filled circle blue, +#| 22 - filled square blue, 23 - filled diamond blue, 24 - filled triangle +#| point-up blue, 25 - filled triangle point down blue. + +shapes <- tibble( + shape = c(0, 1, 2, 5, 3, 4, 6:19, 22, 21, 24, 23, 20), + x = (0:24 %/% 5) / 2, + y = (-(0:24 %% 5)) / 4 +) +ggplot(shapes, aes(x, y)) + + geom_point(aes(shape = shape), size = 5, fill = "red") + + geom_text(aes(label = shape), hjust = 0, nudge_x = 0.15) + + scale_shape_identity() + + expand_limits(x = 4.1) + + scale_x_continuous(NULL, breaks = NULL) + + scale_y_continuous(NULL, breaks = NULL, limits = c(-1.2, 0.2)) + + theme_minimal() + + theme(aspect.ratio = 1/2.75) +``` + +So far we have discussed aesthetics that we can map or set in a scatterplot, when using a point geom. +You can learn more about all possible aesthetic mappings in the aesthetic specifications vignette at . + +The specific aesthetics you can use for a plot depend on the geom you use to represent the data. +In the next section we dive deeper into geoms. + +### Exercises + +1. Create a scatterplot of `hwy` vs. `displ` where the points are pink filled in triangles. + +2. Why did the following code not result in a plot with blue points? + + ```{r} + #| fig-alt: > + #| Scatterplot of highway fuel efficiency versus engine size of cars + #| that shows a negative association. All points are red and + #| the legend shows a red point that is mapped to the word blue. + + ggplot(mpg) + + geom_point(aes(x = displ, y = hwy, color = "blue")) + ``` + +3. What does the `stroke` aesthetic do? + What shapes does it work with? + (Hint: use `?geom_point`) + +4. What happens if you map an aesthetic to something other than a variable name, like `aes(color = displ < 5)`? + Note, you'll also need to specify x and y. + +## Geometric objects {#sec-geometric-objects} + +How are these two plots similar? + +```{r} +#| echo: false +#| message: false +#| layout-ncol: 2 +#| fig-width: 4 +#| fig-height: 2 +#| fig-alt: > +#| There are two plots. The plot on the left is a scatterplot of highway +#| fuel efficiency versus engine size of cars and the plot on the right +#| shows a smooth curve that follows the trajectory of the relationship +#| between these variables. A confidence interval around the smooth +#| curve is also displayed. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_smooth() +``` + +Both plots contain the same x variable, the same y variable, and both describe the same data. +But the plots are not identical. +Each plot uses a different geometric object, geom, to represent the data. +The plot on the left uses the point geom, and the plot on the right uses the smooth geom, a smooth line fitted to the data. + +To change the geom in your plot, change the geom function that you add to `ggplot()`. +For instance, to make the plots above, you can use this code: + +```{r} +#| eval: false + +# Left +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + +# Right +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_smooth() +``` + +Every geom function in ggplot2 takes a `mapping` argument. +However, not every aesthetic works with every geom. +You could set the shape of a point, but you couldn't set the "shape" of a line. +If you try, ggplot2 will silently ignore that aesthetic mapping. +On the other hand, you *could* set the linetype of a line. +`geom_smooth()` will draw a different line, with a different linetype, for each unique value of the variable that you map to linetype. + +```{r} +#| message: false +#| fig-alt: > +#| Two plots of highway fuel efficiency versus engine size of cars. +#| The data are represented with smooth curves. On the left, three +#| smooth curves, all with the same linetype. On the right, three +#| smooth curves with different line types (solid, dashed, or long +#| dashed) for each type of drive train. In both plots, confidence +#| intervals around the smooth curves are also displayed. + +ggplot(mpg, aes(x = displ, y = hwy, shape = drv)) + + geom_smooth() +ggplot(mpg, aes(x = displ, y = hwy, linetype = drv)) + + geom_smooth() +``` + +Here, `geom_smooth()` separates the cars into three lines based on their `drv` value, which describes a car's drive train. +One line describes all of the points that have a `4` value, one line describes all of the points that have an `f` value, and one line describes all of the points that have an `r` value. +Here, `4` stands for four-wheel drive, `f` for front-wheel drive, and `r` for rear-wheel drive. + +If this sounds strange, we can make it more clear by overlaying the lines on top of the raw data and then coloring everything according to `drv`. + +```{r} +#| echo: false +#| message: false +#| fig-alt: > +#| A plot of highway fuel efficiency versus engine size of cars. The data +#| are represented with points (colored by drive train) as well as smooth +#| curves (where line type is determined based on drive train as well). +#| Confidence intervals around the smooth curves are also displayed. + +ggplot(mpg, aes(x = displ, y = hwy, color = drv)) + + geom_point() + + geom_smooth(aes(linetype = drv)) +``` + +Notice that this plot contains two geoms in the same graph. + +Many geoms, like `geom_smooth()`, use a single geometric object to display multiple rows of data. +For these geoms, you can set the `group` aesthetic to a categorical variable to draw multiple objects. +ggplot2 will draw a separate object for each unique value of the grouping variable. +In practice, ggplot2 will automatically group the data for these geoms whenever you map an aesthetic to a discrete variable (as in the `linetype` example). +It is convenient to rely on this feature because the `group` aesthetic by itself does not add a legend or distinguishing features to the geoms. + +```{r} +#| layout-ncol: 3 +#| fig-width: 3 +#| fig-height: 3 +#| message: false +#| fig-alt: > +#| Three plots, each with highway fuel efficiency on the y-axis and engine +#| size of cars, where data are represented by a smooth curve. The first plot +#| only has these two variables, the center plot has three separate smooth +#| curves for each level of drive train, and the right plot not only has the +#| same three separate smooth curves for each level of drive train but these +#| curves are plotted in different colors, without a legend explaining which +#| color maps to which level. Confidence intervals around the smooth curves +#| are also displayed. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_smooth() + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_smooth(aes(group = drv)) + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_smooth(aes(color = drv), show.legend = FALSE) +``` + +If you place mappings in a geom function, ggplot2 will treat them as local mappings for the layer. +It will use these mappings to extend or overwrite the global mappings *for that layer only*. +This makes it possible to display different aesthetics in different layers. + +```{r} +#| message: false +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars, where +#| points are colored according to the car class. A smooth curve following +#| the trajectory of the relationship between highway fuel efficiency versus +#| engine size of cars is overlaid along with a confidence interval around it. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = class)) + + geom_smooth() +``` + +You can use the same idea to specify different `data` for each layer. +Here, we use red points as well as open circles to highlight two-seater cars. +The local data argument in `geom_smooth()` overrides the global data argument in `ggplot()` for that layer only. + +```{r} +#| message: false +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars, where +#| points are colored according to the car class. A smooth curve following +#| the trajectory of the relationship between highway fuel efficiency versus +#| engine size of subcompact cars is overlaid along with a confidence interval +#| around it. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + geom_point( + data = mpg |> filter(class == "2seater"), + color = "red" + ) + + geom_point( + data = mpg |> filter(class == "2seater"), + shape = "circle open", size = 3, color = "red" + ) +``` + +(You'll learn how `filter()` works in the chapter on data transformations: for now, just know that this command selects only the subcompact cars.) + +Geoms are the fundamental building blocks of ggplot2. +You can completely transform the look of your plot by changing its geom, and different geoms can reveal different features of your data. +For example, the histogram and density plot below reveal that the distribution of highway mileage is bimodal and right skewed while the boxplot reveals two potential outliers. + +```{r} +#| fig-asp: 0.33 +#| fig-alt: > +#| Three plots: histogram, density plot, and box plot of highway +#| mileage. + +# Left +ggplot(mpg, aes(x = hwy)) + + geom_histogram(binwidth = 2) + +# Middle +ggplot(mpg, aes(x = hwy)) + + geom_density() + +# Right +ggplot(mpg, aes(x = hwy)) + + geom_boxplot() +``` + +ggplot2 provides more than 40 geoms but these don't cover all possible plots one could make. +If you need a different geom, we recommend looking into extension packages first to see if someone else has already implemented it (see for a sampling). +For example, the **ggridges** package ([https://wilkelab.org/ggridges](https://wilkelab.org/ggridges/){.uri}) is useful for making ridgeline plots, which can be useful for visualizing the density of a numerical variable for different levels of a categorical variable. +In the following plot not only did we use a new geom (`geom_density_ridges()`), but we have also mapped the same variable to multiple aesthetics (`drv` to `y`, `fill`, and `color`) as well as set an aesthetic (`alpha = 0.5`) to make the density curves transparent. + +```{r} +#| fig-asp: 0.33 +#| fig-alt: +#| Density curves for highway mileage for cars with rear wheel, +#| front wheel, and 4-wheel drives plotted separately. The +#| distribution is bimodal and roughly symmetric for real and +#| 4 wheel drive cars and unimodal and right skewed for front +#| wheel drive cars. + +library(ggridges) + +ggplot(mpg, aes(x = hwy, y = drv, fill = drv, color = drv)) + + geom_density_ridges(alpha = 0.5, show.legend = FALSE) +``` + +The best place to get a comprehensive overview of all of the geoms ggplot2 offers, as well as all functions in the package, is the reference page: . +To learn more about any single geom, use the help (e.g. `?geom_smooth`). + +### Exercises + +1. What geom would you use to draw a line chart? + A boxplot? + A histogram? + An area chart? + +2. Earlier in this chapter we used `show.legend` without explaining it: + + ```{r} + #| eval: false + ggplot(mpg, aes(x = displ, y = hwy)) + + geom_smooth(aes(color = drv), show.legend = FALSE) + ``` + + What does `show.legend = FALSE` do here? + What happens if you remove it? + Why do you think we used it earlier? + +3. What does the `se` argument to `geom_smooth()` do? + +4. Recreate the R code necessary to generate the following graphs. + Note that wherever a categorical variable is used in the plot, it's `drv`. + + ```{r} + #| echo: false + #| message: false + #| layout-ncol: 2 + #| fig-width: 4 + #| fig-height: 2 + #| fig-alt: > + #| There are six scatterplots in this figure, arranged in a 3x2 grid. + #| In all plots highway fuel efficiency of cars are on the y-axis and + #| engine size is on the x-axis. The first plot shows all points in black + #| with a smooth curve overlaid on them. In the second plot points are + #| also all black, with separate smooth curves overlaid for each level of + #| drive train. On the third plot, points and the smooth curves are + #| represented in different colors for each level of drive train. In the + #| fourth plot the points are represented in different colors for each + #| level of drive train but there is only a single smooth line fitted to + #| the whole data. In the fifth plot, points are represented in different + #| colors for each level of drive train, and a separate smooth curve with + #| different line types are fitted to each level of drive train. And + #| finally in the sixth plot points are represented in different colors + #| for each level of drive train and they have a thick white border. + + ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + geom_smooth(se = FALSE) + ggplot(mpg, aes(x = displ, y = hwy)) + + geom_smooth(aes(group = drv), se = FALSE) + + geom_point() + ggplot(mpg, aes(x = displ, y = hwy, color = drv)) + + geom_point() + + geom_smooth(se = FALSE) + ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = drv)) + + geom_smooth(se = FALSE) + ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(aes(color = drv)) + + geom_smooth(aes(linetype = drv), se = FALSE) + ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(size = 4, color = "white") + + geom_point(aes(color = drv)) + ``` + +## Facets + +In @sec-data-visualisation you learned about faceting with `facet_wrap()`, which splits a plot into subplots that each display one subset of the data based on a categorical variable. + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars, +#| faceted by class, with facets spanning two rows. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + facet_wrap(~cyl) +``` + +To facet your plot with the combination of two variables, switch from `facet_wrap()` to `facet_grid()`. +The first argument of `facet_grid()` is also a formula, but now it's a double sided formula: `rows ~ cols`. + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars, faceted +#| by number of cylinders across rows and by type of drive train across +#| columns. This results in a 4x3 grid of 12 facets. Some of these facets have +#| no observations: 5 cylinders and 4 wheel drive, 4 or 5 cylinders and front +#| wheel drive. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + facet_grid(drv ~ cyl) +``` + +By default each of the facets share the same scale for x and y axes. +This is useful when you want to compare data across facets but it can be limiting when you want to visualize the relationship within each facet better. +Setting the `scales` argument in a faceting function to `"free"` will allow for different axis scales across both rows and columns. +Other options for this argument are `"free_x"` (different scales across rows) and `"free_y"` (different scales across columns). + +```{r} +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars, +#| faceted by number of cylinders across rows and by type of drive train +#| across columns. This results in a 4x3 grid of 12 facets. Some of these +#| facets have no observations: 5 cylinders and 4 wheel drive, 4 or 5 +#| cylinders and front wheel drive. Facets within a row share the same +#| y-scale and facets within a column share the same x-scale. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() + + facet_grid(drv ~ cyl, scales = "free") +``` + +### Exercises + +1. What happens if you facet on a continuous variable? + +2. What do the empty cells in plot with `facet_grid(drv ~ cyl)` mean? + How do they relate to this plot? + + ```{r} + #| fig-alt: > + #| Scatterplot of number of cycles versus type of drive train of cars. + #| The plot shows that there are no cars with 5 cylinders that are 4 + #| wheel drive or with 4 or 5 cylinders that are front wheel drive. + + ggplot(mpg) + + geom_point(aes(x = drv, y = cyl)) + ``` + +3. What plots does the following code make? + What does `.` do? + + ```{r} + #| eval: false + + ggplot(mpg) + + geom_point(aes(x = displ, y = hwy)) + + facet_grid(drv ~ .) + + ggplot(mpg) + + geom_point(aes(x = displ, y = hwy)) + + facet_grid(. ~ cyl) + ``` + +4. Take the first faceted plot in this section: + + ```{r} + #| eval: false + + ggplot(mpg) + + geom_point(aes(x = displ, y = hwy)) + + facet_wrap(~ class, nrow = 2) + ``` + + What are the advantages to using faceting instead of the color aesthetic? + What are the disadvantages? + How might the balance change if you had a larger dataset? + +5. Read `?facet_wrap`. + What does `nrow` do? + What does `ncol` do? + What other options control the layout of the individual panels? + Why doesn't `facet_grid()` have `nrow` and `ncol` arguments? + +6. Which of the following two plots makes it easier to compare engine size (`displ`) across cars with different drive trains? + What does this say about when to place a faceting variable across rows or columns? + + ```{r} + #| fig-alt: > + #| Two faceted plots, both visualizing highway fuel efficiency versus + #| engine size of cars, faceted by drive train. In the top plot, facet + #| are organized across rows and in the second, across columns. + + ggplot(mpg) + + geom_point(aes(x = displ, y = hwy)) + + facet_grid(drv ~ .) + + ggplot(mpg) + + geom_point(aes(x = displ, y = hwy)) + + facet_grid(. ~ drv) + ``` + +7. Recreate this plot using `facet_wrap()` instead of `facet_grid()`. + How do the positions of the facet labels change? + + ```{r} + #| fig-alt: > + #| Scatterplot of highway fuel efficiency versus engine size of cars, + #| faceted by type of drive train across rows. + + ggplot(mpg) + + geom_point(aes(x = displ, y = hwy)) + + facet_grid(drv ~ .) + ``` + +## Statistical transformations + +Consider a basic bar chart, drawn with `geom_bar()` or `geom_col()`. +The following chart displays the total number of diamonds in the `diamonds` dataset, grouped by `cut`. +The `diamonds` dataset is in the ggplot2 package and contains information on \~54,000 diamonds, including the `price`, `carat`, `color`, `clarity`, and `cut` of each diamond. +The chart shows that more diamonds are available with high quality cuts than with low quality cuts. + +```{r} +#| fig-alt: > +#| Bar chart of number of each cut of diamond. There are roughly 1500 +#| Fair, 5000 Good, 12000 Very Good, 14000 Premium, and 22000 Ideal cut +#| diamonds. + +ggplot(diamonds, aes(x = cut)) + + geom_bar() +``` + +On the x-axis, the chart displays `cut`, a variable from `diamonds`. +On the y-axis, it displays count, but count is not a variable in `diamonds`! +Where does count come from? +Many graphs, like scatterplots, plot the raw values of your dataset. +Other graphs, like bar charts, calculate new values to plot: + +- Bar charts, histograms, and frequency polygons bin your data and then plot bin counts, the number of points that fall in each bin. + +- Smoothers fit a model to your data and then plot predictions from the model. + +- Boxplots compute a robust summary of the distribution and then display that summary as a specially formatted box. + +The algorithm used to calculate new values for a graph is called a **stat**, short for statistical transformation. +@fig-vis-stat-bar shows how this process works with `geom_bar()`. + +```{r} +#| label: fig-vis-stat-bar +#| echo: false +#| out-width: "100%" +#| fig-cap: > +#| When create a bar chart we first start with the raw data, then +#| aggregate it to count the number of observations in each bar, +#| and finally map those computed variables to plot aesthetics. +#| fig-alt: > +#| A figure demonstrating three steps of creating a bar chart. +#| Step 1. geom_bar() begins with the diamonds data set. Step 2. geom_bar() +#| transforms the data with the count stat, which returns a data set of +#| cut values and counts. Step 3. geom_bar() uses the transformed data to +#| build the plot. cut is mapped to the x-axis, count is mapped to the y-axis. + +knitr::include_graphics("images/visualization-stat-bar.png") +``` + +You can learn which stat a geom uses by inspecting the default value for the `stat` argument. +For example, `?geom_bar` shows that the default value for `stat` is "count", which means that `geom_bar()` uses `stat_count()`. +`stat_count()` is documented on the same page as `geom_bar()`. +If you scroll down, the section called "Computed variables" explains that it computes two new variables: `count` and `prop`. + +Every geom has a default stat; and every stat has a default geom. +This means that you can typically use geoms without worrying about the underlying statistical transformation. +However, there are three reasons why you might need to use a stat explicitly: + +1. You might want to override the default stat. + In the code below, we change the stat of `geom_bar()` from count (the default) to identity. + This lets us map the height of the bars to the raw values of a $y$ variable. + + ```{r} + #| warning: false + #| fig-alt: > + #| Bar chart of number of each cut of diamond. There are roughly 1500 + #| Fair, 5000 Good, 12000 Very Good, 14000 Premium, and 22000 Ideal cut + #| diamonds. + + cut_frequencies <- tribble( + ~cut, ~freq, + "Fair", 1610, + "Good", 4906, + "Very Good", 12082, + "Premium", 13791, + "Ideal", 21551 + ) + + ggplot(cut_frequencies, aes(x = cut, y = freq)) + + geom_bar(stat = "identity") + ``` + +2. You might want to override the default mapping from transformed variables to aesthetics. + For example, you might want to display a bar chart of proportions, rather than counts: + + ```{r} + #| fig-alt: > + #| Bar chart of proportion of each cut of diamond. Roughly, Fair + #| diamonds make up 0.03, Good 0.09, Very Good 0.22, Premium 26, and + #| Ideal 0.40. + + ggplot(diamonds, aes(x = cut, y = after_stat(prop), group = 1)) + + geom_bar() + ``` + + To find the variables computed by the stat, look for the section titled "computed variables" in the help for `geom_bar()`. + +3. You might want to draw greater attention to the statistical transformation in your code. + For example, you might use `stat_summary()`, which summarizes the y values for each unique x value, to draw attention to the summary that you're computing: + + ```{r} + #| fig-alt: > + #| A plot with depth on the y-axis and cut on the x-axis (with levels + #| fair, good, very good, premium, and ideal) of diamonds. For each level + #| of cut, vertical lines extend from minimum to maximum depth for diamonds + #| in that cut category, and the median depth is indicated on the line + #| with a point. + + ggplot(diamonds) + + stat_summary( + aes(x = cut, y = depth), + fun.min = min, + fun.max = max, + fun = median + ) + ``` + +ggplot2 provides more than 20 stats for you to use. +Each stat is a function, so you can get help in the usual way, e.g. `?stat_bin`. + +### Exercises + +1. What is the default geom associated with `stat_summary()`? + How could you rewrite the previous plot to use that geom function instead of the stat function? + +2. What does `geom_col()` do? + How is it different from `geom_bar()`? + +3. Most geoms and stats come in pairs that are almost always used in concert. + Read through the documentation and make a list of all the pairs. + What do they have in common? + +4. What variables does `stat_smooth()` compute? + What parameters control its behavior? + +5. In our proportion bar chart, we need to set `group = 1`. + Why? + In other words, what is the problem with these two graphs? + + ```{r} + #| eval: false + + ggplot(diamonds, aes(x = cut, y = after_stat(prop))) + + geom_bar() + ggplot(diamonds, aes(x = cut, fill = color, y = after_stat(prop))) + + geom_bar() + ``` + +## Position adjustments + +There's one more piece of magic associated with bar charts. +You can color a bar chart using either the `color` aesthetic, or, more usefully, `fill`: + +```{r} +#| layout-ncol: 2 +#| fig-width: 4 +#| fig-height: 2 +#| fig-alt: > +#| Two bar charts of cut of diamonds. In the first plot, the bars have colored +#| borders. In the second plot, they're filled with colors. Heights of the +#| bars correspond to the number of diamonds in each cut category. + +ggplot(diamonds, aes(x = cut, color = cut)) + + geom_bar() +ggplot(diamonds, aes(x = cut, fill = cut)) + + geom_bar() +``` + +Note what happens if you map the fill aesthetic to another variable, like `clarity`: the bars are automatically stacked. +Each colored rectangle represents a combination of `cut` and `clarity`. + +```{r} +#| fig-alt: > +#| Segmented bar chart of cut of diamonds, where each bar is filled with +#| colors for the levels of clarity. Heights of the bars correspond to the +#| number of diamonds in each cut category, and heights of the colored +#| segments are proportional to the number of diamonds with a given clarity +#| level within a given cut level. + +ggplot(diamonds, aes(x = cut, fill = clarity)) + + geom_bar() +``` + +The stacking is performed automatically using the **position adjustment** specified by the `position` argument. +If you don't want a stacked bar chart, you can use one of three other options: `"identity"`, `"dodge"` or `"fill"`. + +- `position = "identity"` will place each object exactly where it falls in the context of the graph. + This is not very useful for bars, because it overlaps them. + To see that overlapping we either need to make the bars slightly transparent by setting `alpha` to a small value, or completely transparent by setting `fill = NA`. + + ```{r} + #| layout-ncol: 2 + #| fig-width: 4 + #| fig-height: 2 + #| fig-alt: > + #| Two segmented bar charts of cut of diamonds, where each bar is filled + #| with colors for the levels of clarity. Heights of the bars correspond + #| to the number of diamonds in each cut category, and heights of the + #| colored segments are proportional to the number of diamonds with a + #| given clarity level within a given cut level. However the segments + #| overlap. In the first plot the segments are filled with transparent + #| colors, in the second plot the segments are only outlined with colors. + + ggplot(diamonds, aes(x = cut, fill = clarity)) + + geom_bar(alpha = 1/5, position = "identity") + ggplot(diamonds, aes(x = cut, color = clarity)) + + geom_bar(fill = NA, position = "identity") + ``` + + The identity position adjustment is more useful for 2d geoms, like points, where it is the default. + +- `position = "fill"` works like stacking, but makes each set of stacked bars the same height. + This makes it easier to compare proportions across groups. + + ```{r} + #| fig-alt: > + #| Segmented bar chart of cut of diamonds, where each bar is filled with + #| colors for the levels of clarity. Height of each bar is 1 and heights + #| of the colored segments are proportional to the proportion of diamonds + #| with a given clarity level within a given cut level. + + ggplot(diamonds, aes(x = cut, fill = clarity)) + + geom_bar(position = "fill") + ``` + +- `position = "dodge"` places overlapping objects directly *beside* one another. + This makes it easier to compare individual values. + + ```{r} + #| fig-alt: > + #| Dodged bar chart of cut of diamonds. Dodged bars are grouped by levels + #| of cut (fair, good, very good, premium, and ideal). In each group there + #| are eight bars, one for each level of clarity, and filled with a + #| different color for each level. Heights of these bars represent the + #| number of diamonds with a given level of cut and clarity. + + ggplot(diamonds, aes(x = cut, fill = clarity)) + + geom_bar(position = "dodge") + ``` + +There's one other type of adjustment that's not useful for bar charts, but can be very useful for scatterplots. +Recall our first scatterplot. +Did you notice that the plot displays only 126 points, even though there are 234 observations in the dataset? + +```{r} +#| echo: false +#| fig-alt: > +#| Scatterplot of highway fuel efficiency versus engine size of cars that +#| shows a negative association. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point() +``` + +The underlying values of `hwy` and `displ` are rounded so the points appear on a grid and many points overlap each other. +This problem is known as **overplotting**. +This arrangement makes it difficult to see the distribution of the data. +Are the data points spread equally throughout the graph, or is there one special combination of `hwy` and `displ` that contains 109 values? + +You can avoid this gridding by setting the position adjustment to "jitter". +`position = "jitter"` adds a small amount of random noise to each point. +This spreads the points out because no two points are likely to receive the same amount of random noise. + +```{r} +#| fig-alt: > +#| Jittered scatterplot of highway fuel efficiency versus engine size of cars. +#| The plot shows a negative association. + +ggplot(mpg, aes(x = displ, y = hwy)) + + geom_point(position = "jitter") +``` + +Adding randomness seems like a strange way to improve your plot, but while it makes your graph less accurate at small scales, it makes your graph *more* revealing at large scales. +Because this is such a useful operation, ggplot2 comes with a shorthand for `geom_point(position = "jitter")`: `geom_jitter()`. + +To learn more about a position adjustment, look up the help page associated with each adjustment: `?position_dodge`, `?position_fill`, `?position_identity`, `?position_jitter`, and `?position_stack`. + +### Exercises + +1. What is the problem with this plot? + How could you improve it? + + ```{r} + #| fig-alt: > + #| Scatterplot of highway fuel efficiency versus city fuel efficiency + #| of cars that shows a positive association. The number of points + #| visible in this plot is less than the number of points in the dataset. + + ggplot(mpg, aes(x = cty, y = hwy)) + + geom_point() + ``` + +2. What parameters to `geom_jitter()` control the amount of jittering? + +3. Compare and contrast `geom_jitter()` with `geom_count()`. + +4. What's the default position adjustment for `geom_boxplot()`? + Create a visualization of the `mpg` dataset that demonstrates it. + +## Coordinate systems + +Coordinate systems are probably the most complicated part of ggplot2. +The default coordinate system is the Cartesian coordinate system where the x and y positions act independently to determine the location of each point. +There are two other coordinate systems that are occasionally helpful. + +- `coord_quickmap()` sets the aspect ratio correctly for maps. + This is very important if you're plotting spatial data with ggplot2. + We don't have the space to discuss maps in this book, but you can learn more in the [Maps chapter](https://ggplot2-book.org/maps.html) of *ggplot2: Elegant graphics for data analysis*. + + ```{r} + #| layout-ncol: 2 + #| fig-width: 4 + #| fig-height: 2 + #| message: false + #| fig-alt: > + #| Two maps of the boundaries of New Zealand. In the first plot the aspect + #| ratio is incorrect, in the second plot it is correct. + + nz <- map_data("nz") + + ggplot(nz, aes(long, lat, group = group)) + + geom_polygon(fill = "white", color = "black") + + ggplot(nz, aes(long, lat, group = group)) + + geom_polygon(fill = "white", color = "black") + + coord_quickmap() + ``` + +- `coord_polar()` uses polar coordinates. + Polar coordinates reveal an interesting connection between a bar chart and a Coxcomb chart. + + ```{r} + #| layout-ncol: 2 + #| fig-width: 4 + #| fig-asp: 1 + #| fig-alt: > + #| There are two plots. On the left is a bar chart of cut of diamonds, + #| on the right is a Coxcomb chart of the same data. + + bar <- ggplot(data = diamonds) + + geom_bar( + mapping = aes(x = cut, fill = cut), + show.legend = FALSE, + width = 1 + ) + + theme(aspect.ratio = 1) + + labs(x = NULL, y = NULL) + + bar + coord_flip() + bar + coord_polar() + ``` + +### Exercises + +1. Turn a stacked bar chart into a pie chart using `coord_polar()`. + +2. What's the difference between `coord_quickmap()` and `coord_map()`? + +3. What does the plot below tell you about the relationship between city and highway mpg? + Why is `coord_fixed()` important? + What does `geom_abline()` do? + + ```{r} + #| fig-alt: > + #| Scatterplot of highway fuel efficiency versus engine size of cars that + #| shows a negative association. The plot also has a straight line that + #| follows the trend of the relationship between the variables but does not + #| go through the cloud of points, it is beneath it. + + ggplot(data = mpg, mapping = aes(x = cty, y = hwy)) + + geom_point() + + geom_abline() + + coord_fixed() + ``` + +## The layered grammar of graphics + +We can expand on the graphing template you learned in @sec-graphing-template by adding position adjustments, stats, coordinate systems, and faceting: + + ggplot(data = ) + + ( + mapping = aes(), + stat = , + position = + ) + + + + + +Our new template takes seven parameters, the bracketed words that appear in the template. +In practice, you rarely need to supply all seven parameters to make a graph because ggplot2 will provide useful defaults for everything except the data, the mappings, and the geom function. + +The seven parameters in the template compose the grammar of graphics, a formal system for building plots. +The grammar of graphics is based on the insight that you can uniquely describe *any* plot as a combination of a dataset, a geom, a set of mappings, a stat, a position adjustment, a coordinate system, and a faceting scheme. + +To see how this works, consider how you could build a basic plot from scratch: you could start with a dataset and then transform it into the information that you want to display (with a stat). +Next, you could choose a geometric object to represent each observation in the transformed data. +You could then use the aesthetic properties of the geoms to represent variables in the data. +You would map the values of each variable to the levels of an aesthetic. +You'd then select a coordinate system to place the geoms into, using the location of the objects (which is itself an aesthetic property) to display the values of the x and y variables. + +```{r} +#| echo: false +#| fig-alt: > +#| A figure demonstrating the steps for going from raw data to table of counts +#| where each row represents one level of cut and a count column shows how many +#| diamonds are in that cut level. + +knitr::include_graphics("images/visualization-grammar.png") +``` + +At this point, you would have a complete graph, but you could further adjust the positions of the geoms within the coordinate system (a position adjustment) or split the graph into subplots (faceting). +You could also extend the plot by adding one or more additional layers, where each additional layer uses a dataset, a geom, a set of mappings, a stat, and a position adjustment. + +You could use this method to build *any* plot that you imagine. +In other words, you can use the code template that you've learned in this chapter to build hundreds of thousands of unique plots. + +If you'd like to learn more about the theoretical underpinnings of ggplot2, you might enjoy reading "[The Layered Grammar of Graphics](https://vita.had.co.nz/papers/layered-grammar.pdf)", the scientific paper that describes the theory of ggplot2 in detail. + +## Summary + +In this chapter you learned about the layered grammar of graphics starting with aesthetics and geometries to build a simple plot, facets for splitting the plot into subsets, statistics for understanding how geoms are calculated, position adjustments for controlling the fine details of position when geoms might otherwise overlap, and coordinate systems allow you fundamentally change what `x` and `y` mean. +One layer we have not yet touched on is theme, which we will introduce in @sec-themes. + +Two very useful resources for getting an overview of the complete ggplot2 functionality are the ggplot2 cheatsheet (which you can find at ) and the ggplot2 package website ([https://ggplot2.tidyverse.org](https://ggplot2.tidyverse.org/)). + +An important lesson you should take from this chapter is that when you feel the need for a geom that is not provided by ggplot2, it's always a good idea to look into whether someone else has already solved your problem by creating a ggplot2 extension package that offers that geom. diff --git a/missing-values.qmd b/missing-values.qmd index 86b21b5..3772dc2 100644 --- a/missing-values.qmd +++ b/missing-values.qmd @@ -10,7 +10,7 @@ status("polishing") ## Introduction You've already learned the basics of missing values earlier in the book. -You first saw them in @sec-summarize where they interfered with computing summary statistics, and you learned about their infectious nature and how to check for their presence in @sec-na-comparison. +You first saw them in @sec-data-visualisation where they resulted in a warning when making a plot as well as in @sec-summarize where they interfered with computing summary statistics, and you learned about their infectious nature and how to check for their presence in @sec-na-comparison. Now we'll come back to them in more depth, so you can learn more of the details. We'll start by discussing some general tools for working with missing values recorded as `NA`s. diff --git a/quarto.qmd b/quarto.qmd index 38a082f..506d23e 100644 --- a/quarto.qmd +++ b/quarto.qmd @@ -336,35 +336,6 @@ The following table summarizes which types of output each option suppresses: | `message: false` | | | | | \- | | | `warning: false` | | | | | | \- | -### Global options - -As you work more with knitr, you will discover that some of the default chunk options don't fit your needs and you want to change them. - -You can do this by adding the preferred options in the document YAML, under `execute`. -For example, if you are preparing a report for an audience who does not need to see your code but only your results and narrative, you might set `echo: false` at the document level. -That will hide the code by default, so only showing the chunks you deliberately choose to show (with `echo: true`). -You might consider setting `message: false` and `warning: false`, but that would make it harder to debug problems because you wouldn't see any messages in the final document. - -``` yaml -title: "My report" -execute: - echo: false -``` - -Since Quarto is designed to be multi-lingual (works with R as well as other languages like Python, Julia, etc.), all of the knitr options are not available at the document execution level since some of them only work with knitr and not other engines Quarto uses for running code in other languages (e.g., Jupyter). -You can, however, still set these as global options for your document under the `knitr` field, under `opts_chunk`. -For example, when writing books and tutorials we set: - -``` yaml -title: "Tutorial" -knitr: - opts_chunk: - comment: "#>" - collapse: true -``` - -This uses our preferred comment formatting and ensures that the code and output are kept closely entwined. - ### Inline code There is one other way to embed R code into a Quarto document: directly into the text, with: `r inline()`. @@ -607,7 +578,7 @@ This makes it easier to understand the `dependson` specification. 1. Set up a network of chunks where `d` depends on `c` and `b`, and both `b` and `c` depend on `a`. Have each chunk print `lubridate::now()`, set `cache: true`, then verify your understanding of caching. -## Troubleshooting +> > > > > > > 7ff2b1502187f15a978d74f59a88534fa6f1012e \## Troubleshooting Troubleshooting Quarto documents can be challenging because you are no longer in an interactive R environment, and you will need to learn some new tricks. Additionally, the error could be due to issues with the Quarto document itself or due to the R code in the Quarto document. diff --git a/transform.qmd b/transform.qmd index e5b6a93..332e4a8 100644 --- a/transform.qmd +++ b/transform.qmd @@ -6,8 +6,7 @@ source("_common.R") ``` -After reading the first part of the book, you understand (at least superficially) the most important tools for doing data science. -Now it's time to start diving into the details. +The second part of the book was a deep dive into data visualization. In this part of the book, you'll learn about the most important types of variables that you'll encounter inside a data frame and learn the tools you can use to work with them. ```{r} @@ -15,9 +14,9 @@ In this part of the book, you'll learn about the most important types of variabl #| echo: false #| fig-cap: > #| The options for data transformation depends heavily on the type of -#| data involve, the subject of this part of the book. +#| data involved, the subject of this part of the book. #| fig-alt: > -#| Our data science model transform, highlighted in blue. +#| Our data science model, with transform highlighted in blue. #| out.width: NULL knitr::include_graphics("diagrams/data-science/transform.png", dpi = 270) diff --git a/visualize.qmd b/visualize.qmd new file mode 100644 index 0000000..d386866 --- /dev/null +++ b/visualize.qmd @@ -0,0 +1,41 @@ +# Visualize {#sec-visualize .unnumbered} + +```{r} +#| results: "asis" +#| echo: false +source("_common.R") +status("drafting") +``` + +After reading the first two parts of the book, you understand (at least superficially) the most important tools for doing data science. +Now it's time to start diving into the details. +In this part of the book, you'll learn about visualizing data in further depth. + +```{r} +#| label: fig-ds-visualize +#| echo: false +#| fig-cap: > +#| Data visualization is often the first step in data exploration. +#| fig-alt: > +#| Our data science model, with visualize highlighted in blue. +#| out.width: NULL + +knitr::include_graphics("diagrams/data-science/visualize.png", dpi = 270) +``` + +Each chapter addresses one to a few aspects of creating a data visualization. + +- In @sec-layers you will learn about the layered grammar of graphics. + +- In @sec-exploratory-data-analysis, you'll combine visualization with your curiosity and skepticism to ask and answer interesting questions about data. + +- Finally, in @sec-communication you will learn how to take your exploratory graphics and turn them into expository graphics, graphics that help the newcomer to your analysis understand what's going on as quickly and easily as possible. + +### Learning more + +The absolute best place to learn more is the ggplot2 book: [*ggplot2: Elegant graphics for data analysis*](https://ggplot2-book.org/). +It goes into much more depth about the underlying theory, and has many more examples of how to combine the individual pieces to solve practical problems. + +Another great resource is the ggplot2 extensions gallery . +This site lists many of the packages that extend ggplot2 with new geoms and scales. +It's a great place to start if you're trying to do something that seems hard with ggplot2. diff --git a/whole-game.qmd b/whole-game.qmd index deb23ab..1c59a38 100644 --- a/whole-game.qmd +++ b/whole-game.qmd @@ -39,8 +39,6 @@ Five chapters focus on the tools of data science: - Before you can transform and visualize your data, you need to first get your data into R. In @sec-data-import you'll learn the basics of getting `.csv` files into R. -- Finally, in @sec-exploratory-data-analysis, you'll combine visualization and transformation with your curiosity and skepticism to ask and answer interesting questions about data. - Nestled among these chapters that are five other chapters that focus on your R workflow. In @sec-workflow-basics, @sec-workflow-pipes, @sec-workflow-style, and @sec-workflow-scripts-projects, you'll learn good workflow practices for writing and organizing your R code. These will set you up for success in the long run, as they'll give you the tools to stay organised when you tackle real projects. diff --git a/workflow-basics.qmd b/workflow-basics.qmd index 64ca05f..a368b15 100644 --- a/workflow-basics.qmd +++ b/workflow-basics.qmd @@ -231,7 +231,23 @@ knitr::include_graphics("screenshots/rstudio-env.png") What happens? How can you get to the same place using the menus? +4. Let's revisit an exercise from the @sec-ggsave. + Run the following lines of code. + Which of the two plots is saved as `mpg-plot.png`? + Why? + + ```{r} + #| eval: false + + my_bar_plot <- ggplot(mpg, aes(x = class)) + + geom_bar() + my_scatter_plot <- ggplot(mpg, aes(x = cty, y = hwy)) + + geom_point() + ggsave(filename = "mpg-plot.png", plot = my_bar_plot) + ``` + ## Summary Now that you've learned a little more about how R code works, and some tips to help you understand your code when you come back to it in the future. In the next chapter, we'll continue your data science journey by teaching you about dplyr, the tidyverse package that helps you transform data, whether it's selecting important variables, filtering down to rows of interest, or computing summary statistics. + diff --git a/workflow-pipes.qmd b/workflow-pipes.qmd index 5df8aa9..1041eef 100644 --- a/workflow-pipes.qmd +++ b/workflow-pipes.qmd @@ -129,9 +129,24 @@ But they're still good to know about even if you've never used `%>%` because you Luckily there's no need to commit entirely to one pipe or the other --- you can use the base pipe for the majority of cases where it's sufficient, and use the magrittr pipe when you really need its special features. +## `|>` vs `+` + +Sometimes we'll turn the end of a pipeline of data transformation into a plot. +Watch for the transition from `|>` to `+`. +We wish this transition wasn't necessary but unfortunately ggplot2 was created before the pipe was discovered. + +```{r} +#| eval: false + +diamonds |> + count(cut, clarity) |> + ggplot(aes(clarity, cut, fill = n)) + + geom_tile() +``` + ## Summary -In this chapter, you've learn more about the pipe: why we recommend it and some of the history that lead to `|>`. +In this chapter, you've learned more about the pipe: why we recommend it and some of the history that lead to `|>`. The pipe is important because you'll use it again and again throughout your analysis, but hopefully it will quickly become invisible and your fingers will type it (or use the keyboard shortcut) without your brain having to think too much about it. In the next chapter, we switch back to data science tools, learning about tidy data.

    #(a(8LlTBStQKQ3vuLA#|kTdt&3M# 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