• R语言
  • 如何将ggplot2画出的图形的标题放在图的底端而不是顶端?

print(ggplot(data=AnimalNumperFullSibFamily,aes(x=FamilyID,y=AnimalNum))+geom_bar(stat="identity")+labs(title=paste("图",FigNum," ",SpeciesName,names(FamilySummary)[j],"数据集","测试家系的家系内测试个体数柱状图",sep=""),x="家系编号",y="个体数")+theme(axis.text.x=element_text(angle=90)))


运行代码后,标题在图形的顶端,而一般发表论文,图形都是在底端,请教该如何设置?
</p>

这里是一个概念性的误解。图形本身的标题(title)和图形的题注(caption)是不同的。图形本身的标题和图形是一体,加在图上方,而题注和图形是分离的,属于文档层面的一个对象,加在图下方。

一般 title 需要比较简短(不满一行),而 caption 可以很长(推荐做法),详述一大段话。title 可加可不加,caption 必须加。

你这种情况可以不加 title,只用 caption。

回复 第2楼 的 肖楠:肖版,在这请教个问题,如果把legend放在bottom,然后X轴的label取消后,legend和坐标轴之间有很大空白,怎么样能把legend整体上移近坐标轴?

使用guide_legend设置只能把legend的title和label移动,key不能动。如果在position里设置c(0,2)类型的坐标,只能在坐标轴的面版内放置,不能实现legend在panel之外,这个问题怎么解决?

谢谢!

回复 第2楼 的 肖楠:肖版,怎么加capttion还请您给示范一下,谢谢!

回复 第4楼 的 luansheng:我是这样理解肖版的意思,caption是你把图形插入文档中时加注的,不是用ggplot弄得,R不干这件事。

回复 第5楼 的 gaolei:谢谢您的指点。我明白了。