10

Aim

I am trying to change the shape of the geom_point into a cross (so not a "plus/addition" sign, but a 'death' cross).

Attempt

Let say I have the following data:

library(tidyverse)

df <- read.table(text="x y
                 1    3 
                 2    4 
                 3    6 
                 4    7 ", header=TRUE) 

I am able to change the shape using the shape parameter in geom_point into different shapes, like this:

ggplot(data = df, aes(x =x, y=y)) +  
   geom_point(shape=2)   # change shape

However, there is no option to change the shape into a cross.

Question

How do I change the shape of a value into a cross using ggplot in R?

jay.sf
  • 60,139
  • 8
  • 53
  • 110
user213544
  • 2,046
  • 3
  • 22
  • 52

1 Answers1

24

Shape can be set to a unicode character. The below uses the skull and crossbones but you can look up a more suitable symbol.

Note that the final result will depend on the font used to generate the plot.

ggplot(data = df, aes(x =x, y=y)) +  
  geom_point(shape="\u2620", size = 10) 

Ritchie Sacramento
  • 29,890
  • 4
  • 48
  • 56