2

我想删除右侧的 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 %")

谢谢!

我的阴谋

4

2 回答 2

4

尝试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为每个几何图形中的每个美学调用增加了一个比例,这qplot可能是正在做的事情。但是由于您将大小应用于所有点,因此将 size 参数放在之外aes应该可以达到相同的效果,并且size=20不会为它生成图例(我认为)。并且geom_point应该继承qplot(我希望)的美学。

让我知道这个是否奏效!

编辑:

我刚刚测试了它。将尺寸放在里面geom_point应该可以工作。但是,内部的尺寸设置qplot似乎与调用时的尺寸设置不同geom_point,所以也许在内部设置较小的尺寸geom_point应该可以解决问题(比如,geom_point(size=5)

于 2013-09-27T18:39:37.113 回答
2

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

于 2013-09-27T21:30:07.740 回答