假设我有一个关于来自不同领域和不同品种的胡萝卜产量的数据集:
carrots<-list(Yield=c(345,226,74,559,288,194),
Field=c("A","B","C","D","E","F"),
Breed=rep(c("Long","Short"),each=3))
carrots<-data.frame(carrots)
我想绘制一个条形图,显示每个字段的产量,按品种着色:
ggplot(carrots,aes(y=Yield,x=Field,fill=Breed)) +
geom_bar() +
opts(legend.direction = "horizontal",
legend.position = "top") +
labs(fill="")
但是传说总是与情节区域略微重叠:
plot with slight legend overlap http://users.utu.fi/susjoh/Rplot.png
我尝试手动将图例位置调整到绘图区域之外,例如使用
opts(legend.position=c(0.5,1.1)
然后情节边缘切断了传奇,我不知道如何调整它们。这个问题有更微妙的解决方案吗?
答案 0 :(得分:8)
在我的环境中,图例根本不与绘图区域重叠,但无论如何重叠的是图例的背景,因此您可以通过以下方式将其删除:
ggplot(carrots,aes(y=Yield,x=Field,fill=Breed)) +
geom_bar() +
opts(legend.direction = "horizontal",
legend.position = "top",
legend.background = theme_blank()) + # this does hack
labs(fill="")