假设我有这样的数据:
a <- tibble(id=c(1,1.1,1.2,1.7,2,2.1,2.6,4,4.6,4.68), x=c(0.3,0.5,0.2,0.7,0.1,0.5,0.43,0.6,0.3,0.65), y=c(0.2,0.1,0.22,0.1,0.5,0.2,0.3,0.2,0.14,0.3))
ggplot(a) + geom_line(aes(x=id,y=x),color='red') + geom_line(aes(x=id,y=x+y),color='blue')
你可以看到有一个半径为1的圆。x和x+y(在我的数据中可能更多)分别是红色和蓝色圆圈。所以,x+y必须大于x,但始终在圆内,因为x+y+…=1。我的数据有很多ID,所以不是传统的低维雷达。
你可以用创建雷达图 coord_polar()
coord_polar()
library(tidyverse) ggplot(a) + geom_smooth(aes(x=id,y=x),color='red', se = FALSE) + geom_smooth(aes(x=id,y=x+y),color='blue', se = FALSE) + geom_line(aes(x = id, y = 1)) + coord_polar()
注意,我用过 geom_smooth
geom_smooth