凹凸圖(bump chart)是折線圖的變形形式贡茅,這種圖常用于展示一組數(shù)據(jù)隨時間產(chǎn)生的排名而非絕對值的變化锐秦。下面耳璧,小編就基于ggbump包給大家展示如何繪制凹凸圖。
安裝格郁、加載R包
#安裝R包
install.packages("ggbump")
install.packages("ggplot2")
install.packages("ggprism")
#加載R包
library(ggbump)
library(ggplot2)
library(ggprism)
數(shù)據(jù)
這里我們使用代碼生成作圖所需的數(shù)據(jù)腹殿,同理大家也可以導入自己準備好的數(shù)據(jù):
df<-data.frame(
x=rep(1:6,4),
y=c(10,12,14,12,14,16, 12,14,12,10,12,12, 14,16,10,14,16,10, 16,10,16,16,10,14),
z=c(rep('g1',6),rep('g2',6),rep('g3',6),rep('g4',6)))
注:前兩列數(shù)據(jù)保證為數(shù)值型數(shù)據(jù),否則后續(xù)繪圖可能會報錯例书!
繪圖
1锣尉、基礎(chǔ)繪圖
ggplot(df, aes(x = x, y = y, color = z)) +#數(shù)據(jù)
geom_bump(size = 1.2)
2、添加節(jié)點
ggplot(df, aes(x = x, y = y, color = z)) +#數(shù)據(jù)
geom_bump(size = 1.2)+#基本凹凸圖繪制
geom_point(size = 10)
3决采、調(diào)整整體主題并添加標簽:
ggplot(df, aes(x = x, y = y, color = z)) +#數(shù)據(jù)
geom_bump(size = 1.2)+#基本凹凸圖繪制
geom_point(size = 10)+#添加節(jié)點
scale_color_prism(palette = 'candy_bright')+#自定義顏色
theme_void() +#主題
geom_text(data = df,
aes(x = x, label = z),
size = 4, color='white')+#添加標簽
theme(legend.position = "none")#去除圖例