我想在ggplot2中创建一个干图,以显示各种模型在各种性能指标上的排名。到目前为止,我已经设法使用geom_point创建了茎图的“预算”,但是我无法让geom_segment与这些点对齐。
这是我到目前为止的代码:
data = data.frame(Model = c("RTD", "STD", "RTC"), Measure = c("S", "n"), rank = c(1, 2, 3, 3, 1, 2))
dodge <- position_dodge(width=0.75)
ggplot(data = data, aes(x=Model, y=rank, color = Measure, group = interaction(Model, Measure))) + geom_point(size=4, position = dodge) + geom_segment( aes(x=Model+dodge, xend=Model+dodge, y=0, yend=rank))
这不起作用,因为“ dodge”不是数字对象,因此我无法将其添加到模型的位置。有人知道可以解决吗?
答案 0 :(得分:0)
将geom_segment
调用更改为:
geom_linerange( aes(x=Model, ymin=0, ymax=rank), position = dodge)