gpt4 book ai didi

r - 用r的ggplot2中的线连接点

转载 作者:行者123 更新时间:2023-12-03 13:33:07 26 4
gpt4 key购买 nike

这是我的数据:

    mydata <- data.frame (grp = c(  1,   1,   1,  1, 1,  1, 1, 1, 1, 
2,2, 2, 2,2, 2, 2, 2, 2),
grp1 = c("A", "A", "A", "A", "A", "B", "B", "B", "B" ,
"A", "A", "A", "A", "B", "B", "B", "B", "B"),
namef = c("M1", "M3", "M2", "M4", "M5","M1", "M3", "M4",
"M0", "M6", "M7", "M8", "M10", "M6", "M7", "M8", "M9", "M10"),
dgp = c(1, 1, 1, 1, 1, 1.15, 1.15,1.15, 1.15 ,
2, 2, 2, 2,2.15, 2.15, 2.15, 2.15, 2.15),
position = c(1.1, 2.1, 3.2, 4.1, 5.0,
1.1, 2.0, 5.0, 6.2, 1.0,3.0, 4.1, 5.0,
1.0, 2.1, 3.01, 4.0, 5.02))

require(ggplot2)

plt <- ggplot(mydata) + geom_point(aes(position, dgp,
group = factor(dgp)), size = 2, colour = "purple") +
geom_text(data = mydata,aes(x=position,y=dgp + 0.05,
label=namef))


t

我想从变量namef连接具有相同标签的点。


我认为geom_segment适合处理这种情况:

require(grid)
plt + geom_segment(aes(xend = position, yend = dgp),
arrow = arrow(length = unit(0.1,"cm")))

最佳答案

geom_line将根据group美学来连接点,因此:

ggplot(mydata, aes(position, dgp, group = namef)) +   
geom_point(size = 2, colour = "purple") +
geom_line() +
geom_text(data = mydata,aes(x=position,y=dgp + 0.05, label=namef))


得到你这个:



另外,通常最好将 aes()调用放在对 ggplot的原始调用中,然后仅在需要覆盖单个几何时才添加 aes()data参数
一些美学。

关于r - 用r的ggplot2中的线连接点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11404959/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com