代码之家  ›  专栏  ›  技术社区  ›  Hydro

为什么我在R中看到一个带有ggplot几何线的条形图?

  •  0
  • Hydro  · 技术社区  · 5 年前

    我有以下几点 data.frame 我有多个变量,我想用 ggplot .我理解如果使用 Date 没有分裂成 Year , Month Day 会得到 line plot 但是想知道,如何使用 线形图 ?

    library(tidyverse)
    library(lubridate)
    
    set.seed(123)
    DF <- data.frame(Date = seq(as.Date("2011-01-01"), to = as.Date("2014-12-31"), by = "day"),
                      F = runif(1461,20,60), D = runif(1461,30,70)) %>% 
                      separate(Date, into = c("Year", "Month", "Day")) 
    
    ggplot(DF, aes(x = Year))+
      geom_line(aes(y = F)) +
        geom_line(aes(y = D))
    
    0 回复  |  直到 5 年前
        1
  •  1
  •   andrew_reece    5 年前

    制作 Year 数值,然后为 y (否则你会得到看起来像横条的垂直线)。

    DF %>%
      mutate(across(Year, as.numeric)) %>%
      ggplot(aes(x = Year))+
      geom_line(stat = "summary", aes(y = F), fun = mean, color = 'red') +
      geom_line(stat = "summary", aes(y = D), fun = mean, color = 'blue')
    

    enter image description here

    请注意,通过旋转可以简化一点 F D 到他们自己的专栏:

    DF %>%
      mutate(across(Year, as.numeric)) %>%
      pivot_longer(c(F, D)) %>%
      ggplot(aes(x = Year, y = value, color = name))+
      geom_line(stat = "summary", fun = mean)
    

    enter image description here