ggplot2 - 删除R中的大小图例

时间:2013-09-27 18:27:28

标签: r ggplot2

我想删除右侧的20号图例。以下是我的代码:

qplot(lingLocation[ind,ind_water_fountain]/lingLocation[ind,1], 
     lingLocation[ind,ind_soda]/lingLocation[ind,1],
     color = lingLocation[ind,ind_frosting]/lingLocation[ind,1], size = 20) +
     # opts(legend.position = "none") +
     scale_colour_gradient("Frosting %", low = "blue", high = "red") +
     ylab("Soda %") +
     xlab("Water Fountain %")

谢谢!

my plot

2 个答案:

答案 0 :(得分:3)

尝试从size=20来电中删除qplot参数,并将其粘贴在geom_point来电中。

例如,将代码更改为:

qplot(lingLocation[ind,ind_water_fountain]/lingLocation[ind,1], 
     lingLocation[ind,ind_soda]/lingLocation[ind,1],
     color = lingLocation[ind,ind_frosting]/lingLocation[ind,1]) +
     # opts(legend.position = "none") +
     scale_colour_gradient("Frosting %", low = "blue", high = "red") +
     ylab("Soda %") +
     xlab("Water Fountain %") +
     geom_point(size=20)

我不使用qplot函数,但我认为这应该有效。我相信ggplot2为每个geom中的每个审美调用添加了一个比例,这是qplot可能正在做的事情。但是,由于您将大小应用于所有点,因此将aes之外的大小参数应该达到相同的效果,并且size=20不会为它生成图例(我认为)。 geom_point应该继承qplot(我希望)的美学。

让我知道这是否有效!

编辑:

我刚试过它。在geom_point内放置大小应该有效。但是,从qplot调用时,geom_point内的大小设置似乎与大小设置不同,因此在geom_point内设置较小的大小应该可以解决问题(例如{{1} }})

答案 1 :(得分:1)

qplot假设size规范是映射,因此创建了一个比例。在这里,您只想将其设置为20,因此请将size = 20替换为size = I(20)。这设定了尺寸并且没有创建比例(并且可能使点数大于您的预期)。