将轴刻度更改为ggplot中的“​​框”

时间:2017-08-31 14:10:41

标签: r ggplot2

我有以下虚拟数据:

col1 <- c(1:4, 1:4, 1:4, 1:4)
col2 <- c(168, 2, 40, 12, 2, 60, 16, 3, 70, 20, 15, 11, 200, 150, 1, 100)
col3 <- c(2:5, 2:5, 2:5, 2:5)

dummy_data <- cbind(col1, col2, col3)
dummy_data <- as.data.frame(dummy_data)


ggplot(dummy_data, aes(col1, col3, size = col2))+
  geom_jitter()

这会创建一个jitterplot,其中x轴刻度线是“宽”的,因为抖动的数据点在绘图中有更大的空间。

是否可以创建某种“盒子”或覆盖此范围的行,as in this picture?我希望观察者能够非常清楚该范围。

1 个答案:

答案 0 :(得分:1)

试试这个:

ggplot(dummy_data, aes(x = col1))+
  geom_jitter(aes(y = col3, size = col2)) +
  geom_rect(data = data.frame(x = c(1, 2, 3, 4)), 
            aes(xmin = x - 0.5, xmax = x + 0.5, ymin = 1, ymax = 1.5),
            col = "black", fill = NA, inherit.aes = F)

ggplot

您可以通过&#34; ymin&#34;上/下移动矩形。 &安培; &#34; YMAX&#34;