R ggplot在轴标签上的度符号前插入空格
我想在x轴上放一个度符号,但结果有一个额外的空间,我似乎无法摆脱。文本应为“温度(*C)”,而不是“温度(*C)”。我尝试了两种不同的解决方案,但似乎无法摆脱空间R ggplot在轴标签上的度符号前插入空格,r,ggplot2,R,Ggplot2,我想在x轴上放一个度符号,但结果有一个额外的空间,我似乎无法摆脱。文本应为“温度(*C)”,而不是“温度(*C)”。我尝试了两种不同的解决方案,但似乎无法摆脱空间 ggdat<-data.frame(x=rnorm(100),y=rnorm(100)) #neither of these approaches work xlab <- expression(paste('Temperature (',~degree,'C)',sep='')) xlab <- expressi
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)
ggdat是否需要xlabel作为表达式?你可以试着直接粘贴进去。类似这样的工作原理:
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)
set.seed(1)
ggdat使用expression()
时,~符号构成一个空格,*符号将东西粘在一起。见下面的代码:
ggdat<-data.frame(x=rnorm(100),y=rnorm(100))
ylab <- expression('stuck'*'together'*'eg:'*mu*'liter')
xlab <- expression('sep'~'par'~'at'~'ed'~'eg:'~mu~'liter')
ggplot(data=ggdat,aes(x=x,y=y)) +
geom_point() +
labs(x=xlab,
y=ylab)
ggdatxlab谢谢大卫!您的代码去掉了前面的空间,但由于某种原因,在C之后有一个空间。但是,这是有效的:xlab=expression(“Temperature”(degree*C))
在我的(最新)R安装中似乎不起作用。可能缺少字体?@AF7这可能是编码问题,您可以尝试encoding(xlab)似乎没有任何作用:encoding(xlab)@AF7以前对您有效,但现在无效?我相信这可能是一个编码问题,但如果不知道您使用的是什么操作系统(windows、linux等),就很难判断。如果您发布一个带有可复制示例的问题,可能会有所帮助,因为没有更多信息就很难进行调试。在我脑海中,如果你使用windows,另一个选择是做Sys.setlocale(“LC_ALL”,“English”)
,但同样,发布一个新问题可能最有用,因为我在Linux上,即使几年前我尝试过,这也从未奏效。thnaks,我会尽量找点时间发布一个问题