Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I'd like to put a degree symbol on the x axis but the result has an extra space that I can't seem to get rid of. The text should read 'Temperature (*C)', not 'Temperature ( *C)'. I've tried two different solutions but can't seem to get rid of the space.

ggdat<-data.frame(x=rnorm(100),y=rnorm(100))

#neither of these approaches work
xlab <- expression(paste('Temperature (',~degree,'C)',sep=''))
xlab <- expression('Temperature ('*~degree*C*')')

ggplot(data=ggdat,aes(x=x,y=y)) +
  geom_point() +
  labs(x=xlab)

Scatter plot

Any help is appreciated!

Ben

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
1.5k views
Welcome To Ask or Share your Answers For Others

1 Answer

Do you need your xlabel to be an expression? You could try pasting it in directly. Something like this works:

set.seed(1)
ggdat<-data.frame(x=rnorm(100),y=rnorm(100))

xlab <- "Temperature (°C)"

ggplot(data=ggdat,aes(x=x,y=y)) +
  geom_point() +
  labs(x=xlab)

enter image description here


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...