如何在ggplot2传说中使用下标[R] [英] How to use subscripts in ggplot2 legends [R]

查看:779
本文介绍了如何在ggplot2传说中使用下标[R]的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我可以在ggplot2传说中使用下标吗?我在传奇和其他地方的希腊字母上看到这个问题,但我无法弄清楚如何适应它。



我认为使用 expression()标签,会做的伎俩。但我下面的尝试失败了。

  library(ggplot2)
temp< - data.frame(a = rep(1:4, (b [1] = 100),b = rnorm(4×100),c = 1 + rnorm(4×100))
(temp)[2:3]< ),表达式(c [1]))
temp.m < - melt(temp,id.vars =a)
ggplot(temp.m,aes(x = value ,linetype = variable))+ geom_density()+ facet_wrap(〜a)


解决方案< ( ...):

  ggplot(temp.m,aes(x = value,linetype = variable))+ 
geom_density()+ facet_wrap(〜a)+
scale_linetype_discrete (break = levels(temp.m $ variable),
labels = c(expression(b [1]),expression(c [1])))
pre>

请参阅 help(scale_linetype_discrete)以获得可用的自定义(例如,通过 name = )。


Can I use subscripts in ggplot2 legends? I see this question on greek letters in legends and elsewhere, but I can't figure out how to adapt it.

I thought that using expression(), which works in axis labels, would do the trick. But my attempt below fails. Thanks!

library(ggplot2)
temp <- data.frame(a = rep(1:4, each = 100), b = rnorm(4 * 100), c = 1 + rnorm(4 * 100))
names(temp)[2:3] <- c("expression(b[1])", "expression(c[1])")
temp.m <- melt(temp, id.vars = "a")
ggplot(temp.m, aes(x = value, linetype = variable)) + geom_density() + facet_wrap(~ a)

解决方案

The following should work (remove your line with names(temp) <-...):

ggplot(temp.m, aes(x = value, linetype = variable)) + 
  geom_density() + facet_wrap(~ a) +    
  scale_linetype_discrete(breaks=levels(temp.m$variable),
                          labels=c(expression(b[1]), expression(c[1])))

See help(scale_linetype_discrete) for available customization (e.g. legend title via name=).

这篇关于如何在ggplot2传说中使用下标[R]的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆