2010-03-01 58 views
38

在一个ggplot结束,这工作得很好:当标题是变量名时,如何给ggplot添加标题?

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

但这并不:

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

也没有这样的:

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

我如何可以添加标题到ggplot何时标题是变量名?

+1

我很困惑,下面的作品对我蛮好: >喵< - “喵” > qplot(RNORM(100),RNORM(100))+ OPTS(标题=喵) –

+2

'选择采用'已弃用。改为使用“主题”。 –

回答

19

正如其他人指出的,您的示例似乎适用于变量chart_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常问问题7.13(http://cran.r-project.org/doc/FAQ/R-FAQ.html)可以让你开始,但即使这个FAQ基本上告诉你在有疑问时搜索R帮助。

+0

奇怪......我认为这是一个隐藏的回车在行末(我需要改变文本编辑器!)非常感谢。 – John

15

请提供一个可重现的例子。对我很好了以下工作:

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

自0.9.2版本,opts已经theme一直replace

qplot(mpg, wt, data = mtcars) + theme(title = title) 

此外,请参阅?ggtitle

28

选项已被弃用。一种选择是使用实验室()

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

差不多相同。

+0

+ labs(title = myTitle)和+ ggtitle(myTitle)有什么区别? – skan