歡迎關注R語言數據分析指南
本節復現一張圖原圖如下所示;此圖的繪制倒也不難,可以看作為基礎散點圖+折線圖,難點也許在于上方方塊的繪制,但是如果熟悉ggplot2中的幾何對象倒也很容易找到思路;下面小編就來仔細寫一下繪圖過程,細節還算有一些,請細細品味
原圖
復現圖
原圖可以看作是使用了分面或循環進行繪制,當然此圖部分細節處理也是不太到位,但是也無關大雅,在復現的過程中小編未使用普通的折線圖而是通過ggalt包來添加平滑的曲線,從而來增加圖的美感;通過構建兩份數據來添加兩種圖層,同時還需要注意的一個概念全局映射,局部映射
加載R包
library(tidyverse)
library(ggalt)
library(ggnewscale)
導入數據
df <- read_csv("KY.csv") %>% filter(id=="SH1") %>%
mutate(Testdate=str_remove(Testdate,"2022.08.")) %>%
select(-date_onset) %>%
pivot_longer(-c("id","Ky","Testdate"))
計算Y軸最高點
df2 <- df %>% select(Ky,Testdate,value) %>%
drop_na() %>%
mutate(value=max(value)+2,Ky=as.character(Ky))
數據可視化部分請移步觀看,本文首發于微信公眾號R語言數據分析指南,期待大家的關注