ggplot中geom_pointrange中点和线的大小分开

时间:2016-06-01 19:11:39

标签: r ggplot2

使用ggplot的{​​{1}}功能,如何分别更改点的大小和线条的粗细?

示例:

geom_pointrange()

情节1:

enter image description here

情节2:

enter image description here

我可以得到一个粗线的小点(反之亦然)吗?

解决方法可能是使用# make test data df <- data.frame(y=10, ymin=1, ymax=20, x=1) # store ggplot object p <- ggplot(data=df, aes(y=y, ymin=ymin, ymax=ymax, x=x)) # plot 1: big dot and thick line p + geom_pointrange(fill='blue', color='grey', shape=21, size=5) # plot 2: small dot and thin line (I want small dot and thick line or vice versa) p + geom_pointrange(fill='blue', color='grey', shape=21, lwd=1, size=5) geom_point绘制线条并指向单独的geoms。不幸的是,我的实际应用程序涉及抖动,所以点和间隔最终会在不同的地方结束(除非我可以控制抖动?)。

我可以在SO(like this)上找到类似的问题,但他们并没有直接回答这个问题。

谢谢!

1 个答案:

答案 0 :(得分:11)

您可以将fattensize结合使用:

p + geom_pointrange(fill='blue', color='grey', shape=21, fatten = 20, size = 5)

enter image description here

p + geom_pointrange(fill='blue', color='grey', shape=21, fatten = .5, size = 5)

enter image description here

秒。 ?geom_pointrange

  

催肥
  用于增加大小的乘法因子   geom_crossbar()中的中间栏和中间点   geom_pointrange()。