欢迎关注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语言数据分析指南,期待大家的关注