geom_path() 散点图 ggplot2
geom_path() Scatterplot ggplot2
我正在尝试创建一个类似于 one and this has more explanation
的连接散点图
从本质上讲,我试图在一张图表上显示劳动力中人数下降的情况(以他们的人数衡量)。第二张图显示同期失业率的变化。
这是我的代码:
# ggplot2 call:
Unemployment_Outflows %>%
ggplot( aes(x=unemployment_rate, y=labor, label=year)) +
# Custom the Y scales:
scale_y_continuous() +
geom_line( color="grey") +
geom_point(shape=21, color="black", fill="#69b3a2", size=3)
geom_segment(aes(
xend=c(tail(unemployment_rate, n=-1), NA),
yend=c(tail(labor, n=-1), NA)
)
)
但是,如您所见,线条和阴影区域都不可见,我收到以下错误:
"geom_path:每组只有一个观察,需要调整组审美吗?"
年
改变
change_perc
unemployment_rate
劳工
*年份
(chr) 劳动力 unemployment_rate
(dbl) (dbl)
2015 年第 4 季度 8416681 0 NA
2016 年第四季度 8492965 12.34717
2017 年第四季度 7907511 12.83452
2018 年第四季度 6895514 12.74767
2019 年第四季度 6437891 12.01787
2020 年第三季度 6409070 15.44732
尝试添加 geom_text()
。由于未包含任何数据,因此没有共享输出。这里的代码:
library(ggplot2)
library(dplyr)
#Code
Unemployment_Outflows %>%
ggplot( aes(x=unemployment_rate, y=labor, label=year)) +
# Custom the Y scales:
scale_y_continuous() +
geom_line( color="grey") +
geom_point(shape=21, color="black", fill="#69b3a2", size=3)
geom_segment(aes(
xend=c(tail(unemployment_rate, n=-1), NA),
yend=c(tail(labor, n=-1), NA)
)
)+geom_text(vjust=0.5,fontface='bold')
使用您共享的数据,试试这个:
library(tidyverse)
#Code
df %>%
mutate(year=factor(year,levels = unique(year),ordered = T)) %>%
pivot_longer(-1) %>%
ggplot(aes(x=year,y=value,color=name,group=name))+
geom_point()+geom_line()+geom_area(aes(fill=name),alpha=0.5)+
facet_wrap(.~name,scales='free',nrow = 1)+
scale_y_continuous(labels = scales::comma)+
theme_bw()+
theme(legend.position = 'top')+
labs(color='Var',fill='Var')
输出:
使用了一些数据:
#Data
df <- structure(list(year = c("Q4 2015", "Q4 2016", "Q4 2017", "Q4 2018",
"Q4 2019", "Q3 2020"), labor = c(8416681, 8492965, 7907511, 6895514,
6437891, 6409070), unemployment_rate = c(0, 12.34717, 12.83452,
12.74767, 12.01787, 15.44732)), class = "data.frame", row.names = c(NA,
-6L))
我正在尝试创建一个类似于 one and this has more explanation
的连接散点图从本质上讲,我试图在一张图表上显示劳动力中人数下降的情况(以他们的人数衡量)。第二张图显示同期失业率的变化。
这是我的代码:
# ggplot2 call:
Unemployment_Outflows %>%
ggplot( aes(x=unemployment_rate, y=labor, label=year)) +
# Custom the Y scales:
scale_y_continuous() +
geom_line( color="grey") +
geom_point(shape=21, color="black", fill="#69b3a2", size=3)
geom_segment(aes(
xend=c(tail(unemployment_rate, n=-1), NA),
yend=c(tail(labor, n=-1), NA)
)
)
"geom_path:每组只有一个观察,需要调整组审美吗?"
年 改变 change_perc unemployment_rate 劳工
*年份 (chr) 劳动力 unemployment_rate (dbl) (dbl)
2015 年第 4 季度 8416681 0 NA
2016 年第四季度 8492965 12.34717
2017 年第四季度 7907511 12.83452
2018 年第四季度 6895514 12.74767
2019 年第四季度 6437891 12.01787
2020 年第三季度 6409070 15.44732
尝试添加 geom_text()
。由于未包含任何数据,因此没有共享输出。这里的代码:
library(ggplot2)
library(dplyr)
#Code
Unemployment_Outflows %>%
ggplot( aes(x=unemployment_rate, y=labor, label=year)) +
# Custom the Y scales:
scale_y_continuous() +
geom_line( color="grey") +
geom_point(shape=21, color="black", fill="#69b3a2", size=3)
geom_segment(aes(
xend=c(tail(unemployment_rate, n=-1), NA),
yend=c(tail(labor, n=-1), NA)
)
)+geom_text(vjust=0.5,fontface='bold')
使用您共享的数据,试试这个:
library(tidyverse)
#Code
df %>%
mutate(year=factor(year,levels = unique(year),ordered = T)) %>%
pivot_longer(-1) %>%
ggplot(aes(x=year,y=value,color=name,group=name))+
geom_point()+geom_line()+geom_area(aes(fill=name),alpha=0.5)+
facet_wrap(.~name,scales='free',nrow = 1)+
scale_y_continuous(labels = scales::comma)+
theme_bw()+
theme(legend.position = 'top')+
labs(color='Var',fill='Var')
输出:
使用了一些数据:
#Data
df <- structure(list(year = c("Q4 2015", "Q4 2016", "Q4 2017", "Q4 2018",
"Q4 2019", "Q3 2020"), labor = c(8416681, 8492965, 7907511, 6895514,
6437891, 6409070), unemployment_rate = c(0, 12.34717, 12.83452,
12.74767, 12.01787, 15.44732)), class = "data.frame", row.names = c(NA,
-6L))