2017-04-18 47 views
0

我有一个情节,我试图突出沿线的不同点。我的情节看起来像这样:控制ggplot中附加点的大小/比例

library(ggplot2) 
X<-c(seq(1:20)) 
Y<-c(2,4,6,3,5,8,6,5,4,3,2,4,6,6,9,8,9,5,4,3) 
Col<-as.character(c(1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5)) 
value<-c(NA,NA,NA,NA,10,NA,NA,NA,20,NA,NA,20,20,10,NA,NA,NA,10,NA,NA) 

DF<-data.frame(X,Y,Col,value) 


p<-ggplot(DF, aes(x=X, y=Y)) +geom_line(size=.02) +geom_point(col='black', size=.5)+ geom_jitter(aes(color = Col, size = value),position = position_jitter(height = .2, width = .2)) + scale_colour_manual(values=c("red", "violetred","orange",'blue','steelblue')) 



p+guides(size = "none") 

在基本线条图的顶部,我有5个不同的彩色点可能性由“Col”列定义。我还有两个不同大小的类,我想用“值”列表示。我的问题是,选择代表“价值”列的默认大小是缩放的,以便与较小的大小相比,较大的大小在绘图中显得太大。

有没有办法手动设置比例,所以我可以控制添加点的绘制尺寸(希望使它们更接近彼此的大小)?最终的图应该与此处的图相似,只有值= 10点才会比值= 20点略小。

我已经使用了一些“手动”选项试过了,但是当我做它总是绘制其他的“Y”栏点,这对于现在由于来港

回答

1

抑制以同样的方式你使用scale_colour_变体手动定义点的颜色,您可以使用scale_size来定义尺寸。

在这种情况下,您可以定义要使用的尺寸范围。添加+ scale_size(range = c(4,6))似乎会给出符合您描述的结果。您可以通过更改数字来调整点的大小和点之间的大小差异。