ggplot2:如何产生较小的点

时间:2018-08-06 03:17:14

标签: r ggplot2 plot graphics

我有一个很大的数据集,正在使用散点图进行绘制。这些点具有x,y的唯一组合,因此它们不重叠,但是其中一些彼此非常接近,因此我以较小的尺寸绘制它们。

1-如何产生较小的点符号(较小的size)以使面积成比例。在此示例中,最后一点没有与size成比例的面积。我期望它比中间的小10,例如:

df <- data.frame(c1 = 1:3, c2 = c(1,1,1))
ggplot(df) + geom_point(aes(x= c1, y = c2), size = c(1, 0.1, 0.01)) 

2- ggplot2中的size与R图形cex自变量如何匹配,例如:plot(df$c2 ~ df$c1, cex = c(1, 0.1, 0.01))。 谢谢

2 个答案:

答案 0 :(得分:3)

size =有一个geom_point参数,但是您可以为所有点指定一个大小:

+ geom_point(size = 0.5)

或者使用aes将大小映射到数据中的一列:

+ geom_point(aes(size = c2))

在后一种情况下,您可以使用scale_size_continuous控制尺寸范围。默认值为min = 1,max =6。要获取例如 min = 2,max = 8:

+ geom_point(aes(size = c2)) + scale_size_continuous(range = c(2, 8))
  • 请注意,“ ggplot2方法”是将数据映射到几何,而不是为每个观测值赋值
  • 不,这里的大小不同于cex

答案 1 :(得分:2)

您可以尝试

geom_point(shape = ".") 

这将使点的大小为1像素。

这是来自H Wickham的ggplot2第二版第70页