当标题是变量名时,如何向ggplot添加标题?

时间:2010-03-01 22:52:51

标签: r ggplot2 title

在ggplot结束时,这很好用:

+ opts(title = expression("Chart chart_title..."))

但这不是:

chart_title = "foo"
+ opts(title = expression(chart_title))

也不是:

chart_title = "foo"
+ opts(title = chart_title)

如果标题是变量名称,如何在ggplot中添加标题?

4 个答案:

答案 0 :(得分:29)

Opts已被弃用。一种选择是使用labs()

myTitle <- "My title"
qplot(mpg, wt, data = mtcars) + labs(title = myTitle)

几乎一样。

答案 1 :(得分:24)

正如其他人指出的那样,对于变量chart_title是字符串或表达式的情况,您的示例似乎工作正常。有时构造title变量很棘手;例如,如果chart_title使用其他一些变量,可能会出现令人困惑的情况,如果另外你使用了一些希腊字符,那么简单的paste(...)就不够了。要构建这样的标题,您可以使用以下内容:

foo <- rnorm(100)
number <- 1
chart_title <- substitute(paste("Chart no. ",number,": ",alpha," vs ",beta,sep=""), list(number = number))
qplot(foo,foo) + opts(title = chart_title)

构建标题时派上用场的另一个功能是bquote()。程序化的标题建设可能是一个混乱的业务; R FAQ 7.13(http://cran.r-project.org/doc/FAQ/R-FAQ.html)可以帮助您入门,但即使该FAQ基本上也会告诉您在有疑问时搜索R-Help。

答案 2 :(得分:15)

请提供可重复的示例。以下工作对我来说很好:

title <- "My title"
qplot(mpg, wt, data = mtcars) + opts(title = title)

从版本0.9.2开始,opts theme已由qplot(mpg, wt, data = mtcars) + theme(title = title) ?ggtitle开始:

{{1}}

另请参阅{{1}}。

答案 3 :(得分:1)

ggtitle(paste(“总和为=”,mysum,“计数为=”,N))

mysum和N是变量