使用ggplot中的facet_wrap将标题放在图表的顶部和左侧

时间:2012-12-07 14:30:24

标签: r ggplot2

enter image description here DF

Date       Team    Country   Score
1/1/2012   TeamA   Germany  10
1/2/2012   TeamA   Germany  25
1/3/2012   TeamA   Germany  50
1/1/2012   TeamB   France  10
1/2/2012   TeamB   France  70
1/3/2012   TeamB   France  50

我想用ggplot创建facet wrap graph以获得标题,并将country放在每个绘图的左侧,如图所示。这对ggplot有用吗?

ggplot(df,aes(Date, Score, group=Team, colour=Team))+ 
        geom_point(size=0.5) + 
        geom_smooth(method="lm", se=T, size=1) + 
        facet_wrap(~Team, scale="free")

enter image description here

1 个答案:

答案 0 :(得分:1)

我定义

dat.text
   Team Country x  y
3 TeamA Germany 3 30
4 TeamB  France 3 15

使用geom_text

 p + geom_text(aes(x, y, label=Country, group=NULL),data=dat.text,
               angle =90,family = "mono",size=12)
    + theme(legend.position = "none")

enter image description here

这个想法:我使用一个包含三条信息的新数据框,并将其用于geom_text。

ggplot完成剩下的工作。

  • 坐标(x,y)
  • 分面变量级别:团队
  • 要提供的标签:国家/地区

    要将文字放在情节右侧,我选择

     dat.text$x  <- tail(originalData$Date,1)