如何在ggplot2中将.csv文件中的两个变量绘制为两行?

时间:2019-04-15 19:52:16

标签: r csv ggplot2 linear-regression linegraph

我已经导入了一个.csv文件,并在折线图上绘制了数据点。但是我正在尝试比较男性和女性的预期寿命,但是我不知道如何绘制男性的线条和女性的线条。

以下是我的部分数据示例(ALE代表平均预期寿命)。

Year    Sex ALE
1900    Female  48.3
1900    Male    46.6
1901    Female  50.6
1901    Male    48
1902    Female  53.4
1902    Male    50.2
1903    Female  52
1903    Male    49.5
1904    Female  49.1
1904    Male    46.6
1905    Female  50.2
1905    Male    47.6

这是我到目前为止的代码。最终,我将把工作放到.rmd文件中。

library(ggplot2) # call up ggplot2
library(RColorBrewer) # call up rcolorbrewer palette
options(scipen = 999) # remove scientific notation
sex <- read.csv("~/Big Data IBP/Life expectancy_sex.csv") # data focusing on life expectancy comparing sex. #male v. female
# run test to see how year of death has changed over the years
ggplot(data = sex, aes(x = Year, y = ALE)) +
  geom_line(linetype = "solid", col = "Blue", size = 0.5, arrow = arrow()) +
  labs(
    title = "Average Life Expectancy Based on Sex",
    subtitle = "1900-2014", x = "Year", y = "Age at Death"
  )

问题是我想在男性上画一条线,在女性上画一条线,以便在一张图表上比较这两条线。但是我得到的实际结果是图中的一条线。

1 个答案:

答案 0 :(得分:0)

您需要将groupcolorlinetype映射到aes

library(ggplot2) # call up ggplot2
options(scipen = 999) # remove scientific notation

df <- read.table(text = "Year    Sex ALE
1900    Female  48.3
1900    Male    46.6
1901    Female  50.6
1901    Male    48
1902    Female  53.4
1902    Male    50.2
1903    Female  52
1903    Male    49.5
1904    Female  49.1
1904    Male    46.6
1905    Female  50.2
1905    Male    47.6",
                 header = TRUE, stringsAsFactors = FALSE)
# run test to see how year of death has changed over the years
ggplot(data = df, aes(x = Year, y = ALE, 
                      group = Sex, color = Sex, linetype = Sex)) +
  geom_line(size = 0.5, arrow = arrow()) +
  labs(
    title = "Average Life Expectancy Based on Sex",
    subtitle = "1900-2014", x = "Year", y = "Age at Death"
  ) +
  scale_color_brewer(palette = "Dark2") +
  theme_classic(base_size = 16)

reprex package(v0.2.1)于2019-04-15创建