E Styling Plots

E.1 Aesthetics

E.1.1 Colour/Fill

The colour argument changes the point and line colour, while the fill argument changes the interior colour of shapes. Type colours() into the console to see a list of all the named colours in R. Alternatively, you can use hexadecimal colours like "#FF8000" or the rgb() function to set red, green, and blue values on a scale from 0 to 1.

Hover over a colour to see its R name.

  • black
  • gray1
  • gray2
  • gray3
  • gray4
  • gray5
  • gray6
  • gray7
  • gray8
  • gray9
  • gray10
  • gray11
  • gray12
  • gray13
  • gray14
  • gray15
  • gray16
  • gray17
  • gray18
  • gray19
  • gray20
  • gray21
  • gray22
  • gray23
  • gray24
  • gray25
  • gray26
  • gray27
  • gray28
  • gray29
  • gray30
  • gray31
  • gray32
  • gray33
  • gray34
  • gray35
  • gray36
  • gray37
  • gray38
  • gray39
  • gray40
  • dimgray
  • gray42
  • gray43
  • gray44
  • gray45
  • gray46
  • gray47
  • gray48
  • gray49
  • gray50
  • gray51
  • gray52
  • gray53
  • gray54
  • gray55
  • gray56
  • gray57
  • gray58
  • gray59
  • gray60
  • gray61
  • gray62
  • gray63
  • gray64
  • gray65
  • darkgray
  • gray66
  • gray67
  • gray68
  • gray69
  • gray70
  • gray71
  • gray72
  • gray73
  • gray74
  • gray
  • gray75
  • gray76
  • gray77
  • gray78
  • gray79
  • gray80
  • gray81
  • gray82
  • gray83
  • lightgray
  • gray84
  • gray85
  • gainsboro
  • gray86
  • gray87
  • gray88
  • gray89
  • gray90
  • gray91
  • gray92
  • gray93
  • gray94
  • gray95
  • gray96
  • gray97
  • gray98
  • gray99
  • white
  • snow4
  • snow3
  • snow2
  • snow
  • rosybrown4
  • rosybrown
  • rosybrown3
  • rosybrown2
  • rosybrown1
  • lightcoral
  • indianred
  • indianred4
  • indianred2
  • indianred1
  • indianred3
  • brown4
  • brown
  • brown3
  • brown2
  • brown1
  • firebrick4
  • firebrick
  • firebrick3
  • firebrick1
  • firebrick2
  • darkred
  • red3
  • red2
  • red
  • mistyrose3
  • mistyrose4
  • mistyrose2
  • mistyrose
  • salmon
  • tomato3
  • coral4
  • coral3
  • coral2
  • coral1
  • tomato2
  • tomato
  • tomato4
  • darksalmon
  • salmon4
  • salmon3
  • salmon2
  • salmon1
  • coral
  • orangered4
  • orangered3
  • orangered2
  • lightsalmon3
  • lightsalmon2
  • lightsalmon
  • lightsalmon4
  • sienna
  • sienna3
  • sienna2
  • sienna1
  • sienna4
  • orangered
  • seashell4
  • seashell3
  • seashell2
  • seashell
  • chocolate4
  • chocolate3
  • chocolate
  • chocolate2
  • chocolate1
  • linen
  • peachpuff4
  • peachpuff3
  • peachpuff2
  • peachpuff
  • sandybrown
  • tan4
  • peru
  • tan2
  • tan1
  • darkorange4
  • darkorange3
  • darkorange2
  • darkorange1
  • antiquewhite3
  • antiquewhite2
  • antiquewhite1
  • bisque4
  • bisque3
  • bisque2
  • bisque
  • burlywood4
  • burlywood3
  • burlywood
  • burlywood2
  • burlywood1
  • darkorange
  • antiquewhite4
  • antiquewhite
  • papayawhip
  • blanchedalmond
  • navajowhite4
  • navajowhite3
  • navajowhite2
  • navajowhite
  • tan
  • floralwhite
  • oldlace
  • wheat4
  • wheat3
  • wheat2
  • wheat
  • wheat1
  • moccasin
  • orange4
  • orange3
  • orange2
  • orange
  • goldenrod
  • goldenrod1
  • goldenrod4
  • goldenrod3
  • goldenrod2
  • darkgoldenrod4
  • darkgoldenrod
  • darkgoldenrod3
  • darkgoldenrod2
  • darkgoldenrod1
  • cornsilk
  • cornsilk4
  • cornsilk3
  • cornsilk2
  • lightgoldenrod4
  • lightgoldenrod3
  • lightgoldenrod
  • lightgoldenrod2
  • lightgoldenrod1
  • gold4
  • gold3
  • gold2
  • gold
  • lemonchiffon4
  • lemonchiffon3
  • lemonchiffon2
  • lemonchiffon
  • palegoldenrod
  • khaki
  • darkkhaki
  • khaki4
  • khaki3
  • khaki2
  • khaki1
  • ivory4
  • ivory3
  • ivory2
  • ivory
  • beige
  • lightyellow4
  • lightyellow3
  • lightyellow2
  • lightyellow
  • lightgoldenrodyellow
  • yellow4
  • yellow3
  • yellow2
  • yellow
  • olivedrab
  • olivedrab4
  • olivedrab3
  • olivedrab2
  • olivedrab1
  • darkolivegreen
  • darkolivegreen4
  • darkolivegreen3
  • darkolivegreen2
  • darkolivegreen1
  • greenyellow
  • chartreuse4
  • chartreuse3
  • chartreuse2
  • lawngreen
  • chartreuse
  • honeydew4
  • honeydew3
  • honeydew2
  • honeydew
  • darkseagreen4
  • darkseagreen
  • darkseagreen3
  • darkseagreen2
  • darkseagreen1
  • lightgreen
  • palegreen
  • palegreen4
  • palegreen3
  • palegreen1
  • forestgreen
  • limegreen
  • darkgreen
  • green4
  • green3
  • green2
  • green
  • mediumseagreen
  • seagreen
  • seagreen3
  • seagreen2
  • seagreen1
  • mintcream
  • springgreen4
  • springgreen3
  • springgreen2
  • springgreen
  • aquamarine3
  • aquamarine2
  • aquamarine
  • mediumspringgreen
  • aquamarine4
  • turquoise
  • mediumturquoise
  • lightseagreen
  • azure4
  • azure3
  • azure2
  • azure
  • lightcyan4
  • lightcyan3
  • lightcyan2
  • lightcyan
  • paleturquoise
  • paleturquoise4
  • paleturquoise3
  • paleturquoise2
  • paleturquoise1
  • darkslategray
  • darkslategray4
  • darkslategray3
  • darkslategray2
  • darkslategray1
  • cyan4
  • cyan3
  • darkturquoise
  • cyan2
  • cyan
  • cadetblue4
  • cadetblue
  • turquoise4
  • turquoise3
  • turquoise2
  • turquoise1
  • powderblue
  • cadetblue3
  • cadetblue2
  • cadetblue1
  • lightblue4
  • lightblue3
  • lightblue
  • lightblue2
  • lightblue1
  • deepskyblue4
  • deepskyblue3
  • deepskyblue2
  • deepskyblue
  • skyblue
  • lightskyblue4
  • lightskyblue3
  • lightskyblue2
  • lightskyblue1
  • lightskyblue
  • skyblue4
  • skyblue3
  • skyblue2
  • skyblue1
  • aliceblue
  • slategray
  • lightslategray
  • slategray3
  • slategray2
  • slategray1
  • steelblue4
  • steelblue
  • steelblue3
  • steelblue2
  • steelblue1
  • dodgerblue4
  • dodgerblue3
  • dodgerblue2
  • dodgerblue
  • lightsteelblue4
  • lightsteelblue3
  • lightsteelblue
  • lightsteelblue2
  • lightsteelblue1
  • slategray4
  • cornflowerblue
  • royalblue
  • royalblue4
  • royalblue3
  • royalblue2
  • royalblue1
  • ghostwhite
  • lavender
  • midnightblue
  • navy
  • blue4
  • blue3
  • blue2
  • blue
  • darkslateblue
  • slateblue
  • mediumslateblue
  • lightslateblue
  • slateblue1
  • slateblue4
  • slateblue3
  • slateblue2
  • mediumpurple4
  • mediumpurple3
  • mediumpurple
  • mediumpurple2
  • mediumpurple1
  • purple4
  • purple3
  • blueviolet
  • purple1
  • purple2
  • purple
  • darkorchid
  • darkorchid4
  • darkorchid3
  • darkorchid2
  • darkorchid1
  • darkviolet
  • mediumorchid4
  • mediumorchid3
  • mediumorchid
  • mediumorchid2
  • mediumorchid1
  • thistle4
  • thistle3
  • thistle
  • thistle2
  • thistle1
  • plum4
  • plum3
  • plum2
  • plum1
  • plum
  • violet
  • darkmagenta
  • magenta3
  • magenta2
  • magenta
  • orchid4
  • orchid3
  • orchid
  • orchid2
  • orchid1
  • maroon4
  • violetred
  • maroon3
  • maroon2
  • maroon1
  • mediumvioletred
  • deeppink3
  • deeppink2
  • deeppink
  • deeppink4
  • hotpink2
  • hotpink1
  • hotpink4
  • hotpink
  • violetred4
  • violetred3
  • violetred2
  • violetred1
  • hotpink3
  • lavenderblush4
  • lavenderblush3
  • lavenderblush2
  • lavenderblush
  • maroon
  • palevioletred4
  • palevioletred3
  • palevioletred
  • palevioletred2
  • palevioletred1
  • pink4
  • pink3
  • pink2
  • pink1
  • pink
  • lightpink
  • lightpink4
  • lightpink3
  • lightpink2
  • lightpink1

E.1.2 Alpha

The alpha argument changes transparency (0 = totally transparent, 1 = totally opaque).

Varying alpha values.

Figure E.1: Varying alpha values.

E.1.3 Shape

The shape argument changes the shape of points.

The 25 shape values

Figure E.2: The 25 shape values

E.1.4 Linetype

You can probably guess what the linetype argument does.

The 6 linetype values at different sizes.

Figure E.3: The 6 linetype values at different sizes.

E.2 Palettes

Discrete palettes change depending on the number of categories.

Default discrete palette with different numbers of levels.

Figure E.4: Default discrete palette with different numbers of levels.

E.2.1 Viridis Palettes

Viridis palettes are very good for colourblind-safe and greyscale-safe plots. The work with any number of categories, but are best for larger numbers of categories or continuous colours.

E.2.1.1 Discrete Viridis Palettes

Set discrete viridis colours with scale_colour_viridis_d() or scale_fill_viridis_d() and set the option argument to one of the options below. Set direction = -1 to reverse the order of colours.

Discrete viridis palettes.

Figure E.5: Discrete viridis palettes.

If the end colour is too light for your plot or the start colour too dark, you can set the begin and end arguments to values between 0 and 1, such as scale_colour_viridis_c(begin = 0.1, end = 0.9).

E.2.1.2 Continuous Viridis Palettes

Set continuous viridis colours with scale_colour_viridis_c() or scale_fill_viridis_c() and set the option argument to one of the options below. Set direction = -1 to reverse the order of colours.

Continuous viridis palettes.

Figure E.6: Continuous viridis palettes.

E.2.2 Brewer Palettes

Brewer palettes give you a lot of control over plot colour and fill. You set them with scale_color_brewer() or scale_fill_brewer() and set the palette argument to one of the palettes below. Set direction = -1 to reverse the order of colours.

E.2.2.1 Qualitative Brewer Palettes

These palettes are good for categorical data with up to 8 categories (some palettes can handle up to 12). The "Paired" palette is useful if your categories are arranged in pairs.

Qualitative brewer palettes.

Figure E.7: Qualitative brewer palettes.

E.2.2.2 Sequential Brewer Palettes

These palettes are good for up to 9 ordinal categories with a lot of categories.

Sequential brewer palettes.

Figure E.8: Sequential brewer palettes.

E.2.2.3 Diverging Brewer Palettes

These palettes are good for ordinal categories with up to 11 levels where the centre level is a neutral or baseline category and the levels above and below it differ in an important way, such as agree versus disagree options.

Diverging brewer palettes.

Figure 2.6: Diverging brewer palettes.

E.3 Themes

ggplot2 has 8 built-in themes that you can add to a plot like plot + theme_bw() or set as the default theme at the top of your script like theme_set(theme_bw()).

{ggplot2} themes.

Figure E.9: {ggplot2} themes.

E.3.1 ggthemes

You can get more themes from add-on packages, like ggthemes. Most of the themes also have custom scale_ functions like scale_colour_economist(). Their website has extensive examples and instructions for alternate or dark version sof these themes.

{ggthemes} themes.

Figure E.10: {ggthemes} themes.