我正在尝试绘制排名数据的中位数。在此图下,我试图绘制排名值。
示例数据:
test=data.frame(a=rep(seq(-5,5,by=0.1),each=1,length.out=101),b=runif(101, min=-5, max=5))
test$range=rep(seq(1, 101, by=1), each=1,length.out=length(test[,1]))
因此,我试图仅绘制中位数。 我试过了:
ggplot(data= test) + stat_summary(
mapping = aes(x = range, y = b),
fun.y = median)
但是我收到警告消息:删除了包含缺失值(geom_pointrange)的101行。
我通过以下命令得到它:
ggplot(test, aes(x = range, y = b, color = b )) +
geom_line(size = 0.5) +
geom_smooth(aes(color=..y..), size=1.5, method = "loess", se=FALSE) +
scale_colour_gradient2(low = "green", mid = "yellow" , high = "red",
midpoint=median(test$b))
但这并不是我想要的,我只想要中位数。
我也想在此图下绘制test $ a的值。但是我不知道该怎么做:
谢谢!