是否有任何方法可以将垂直线作为ggplot2
中的数据点表示形式?形状选项0-25都不是我所需要的,所以我猜我需要另一个加载项或一种方法来更改形状15的尺寸。The left chart here是我希望它看起来像什么的示例。
下面是一些简单的代码,如果它有助于编写响应:
a <- c(1, 3, 5)
b <- c(2, 4, 6)
df <- data.frame(a, b)
ggplot(data = df, aes(x = a, y = b)) +
geom_point(shape = 15)
1条答案
按热度按时间plicqrtu1#
我看到了两种可能的方法来帮助生成与您在参考图中看到的类似的垂直图示符。
第一种方法是使用
geom_errorbar()
函数,第二种方法是将特定的数值传递给shape
参数,但需要scale_shape_identity()
函数的帮助。第一种方法利用
geom_errorbar()
函数,只是我们设置width = 0
来抑制水平线。注意,我手动设置了上限和下限,并将它们追加到数据框中。调整垂直距离以满足您的需要。第二种方法直接利用
shape
参数。注意,geom_point()
函数的shape
参数可容纳各种不同的值。通常使用0到25之间的形状值,但也存在其他值。特别是,形状32到127对应不同的ASCII字符。在scale_shape_identity()
上分层,你可以传递任何法律的的形状值。值73或108应该工作得很好。为了提供更深入的理解,我们传递给
shape
参数的数值也称为ASCII码,特别是,代码73对应于大写字母“I”。(即,"I"
),并且代码108对应于小写字母“l”。(即"l"
)。在绘图中,字母将不带衬线(即交叉线),将所有点转换为竖线。请参阅以下演示:实际上,传入以下任何字符都将生成一条竖线:
"|"
、"l"
或"I"
中的任意一个。