ggplot:左上角的位置图例

时间:2015-03-02 18:01:21

标签: r ggplot2

我有一个用ggplot2制作的情节,我想让传说位于左上角

legend.position = "top"给我一个位于情节上方的传奇,但是居中:

Legend is on top, but centered

legend.position = c(0,1)获取左上角的图例,但它浮动在其他图元素上:

Look at that legend float!

知道如何在没有漂浮的情况下在左上方获得该传奇?我试图宣布传说中的高度,但没有骰子。我是否必须调整标题和绘图区域的大小和位置?

谢谢!

2 个答案:

答案 0 :(得分:12)

这样的事情怎么样 - 不确定是否有办法避免" hack"在\n\n\n

的调用中ggtitle()
library(ggplot2)

ggplot(mtcars, aes(x = factor(cyl), y = mpg, fill = factor(cyl))) + 
  geom_boxplot() +
  ggtitle("A Title for Plot\n\n\n") +
  theme(
           legend.position = c(0, 1), 
      legend.justification = c(0, 0),
          legend.direction = "horizontal"
  )

Plot with Left-Justified Title Above Plot

答案 1 :(得分:5)

这可以通过使用预定义的选项进行legend.justification来完成。

library(ggplot2)

ggplot(mtcars, aes(x=factor(cyl), y=mpg, fill=factor(cyl))) + 
  geom_boxplot() +
  ggtitle("No title needed") +
  theme(legend.position='top', 
        legend.justification='left',
        legend.direction='horizontal')

enter image description here