本文主要介绍如何利用R语言绘制坡度变化图,可用于展示数据不同时期内的变化状况,如下图所示。更多内容可关注微信公众号日常分享的小懒猫
。
1、数据准备
以2010和2020年东北三省辽宁、吉林、黑龙江的人均GDP数据为例。数据来源于国家统计局[1]。
library(tidyverse)
GDPdf <- readxl::read_xlsx("GDPdf.xlsx")
GDP <- GDPdf %>% filter(year %in% c(2010, 2020)) %>% filter(region == "东北地区")
GDP$year <- as.character(GDP$year)
head(GDP)
# A tibble: 6 x 4
# province region year PerGDP
# <chr> <chr> <chr> <dbl>
#1 辽宁 东北地区 2020 58872
#2 吉林 东北地区 2020 50800
#3 黑龙江 东北地区 2020 42635
#4 辽宁 东北地区 2010 31888
#5 吉林 东北地区 2010 23370
#6 黑龙江 东北地区 2010 21694
str(GDP)
#tibble [6 x 4] (S3: tbl_df/tbl/data.frame)
#$ province: chr [1:6] "辽宁" "吉林" "黑龙江" "辽宁" ...
#$ region : chr [1:6] "东北地区" "东北地区" "东北地区" "东北地区" ...
#$ year : chr [1:6] "2020" "2020" "2020" "2010" ...
#$ PerGDP : num [1:6] 58872 50800 42635 31888 23370 ...
2、图形绘制
# Source:WeChat:日常分享的小懒猫
ggplot(GDP, aes(year, fill = province, PerGDP)) +
geom_vline(xintercept = "2010", linewidth = 1) +
geom_vline(xintercept = "2020", linewidth = 1) +
geom_point(size = 5.5, shape = 21, show.legend = FALSE) +
geom_line(aes(group = province), linetype = 2) +
geom_text(data = GDP %>% filter(year == 2010), hjust = 1.2, size = 5, aes(label = province)) +
geom_text(data = GDP %>% filter(year == 2020), hjust = -0.2, size = 5, aes(label = province)) +
ggtitle("slope plot") +
labs(x = "year") +
theme_bw(base_size = 15) +
theme(axis.text = element_text(colour = "black", family = "serif"))

参数解读:主要使用geom_vline()
函数添加线段,geom_point()
函数绘制散点,geom_line()
绘制变化趋势,geom_text()
函数添加文本。
3、其他
更多内容可关注微信公众号【日常分享的小懒猫】。
如有帮助请多多点赞哦!
参考资料
国家统计局: https://data.stats.gov.cn/index.htm
文章转载自日常分享的小懒猫,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




