Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 用两年时间搞一个阴谋_R_Ggplot2 - Fatal编程技术网

R 用两年时间搞一个阴谋

R 用两年时间搞一个阴谋,r,ggplot2,R,Ggplot2,如何从不同的日期制作一个图表?例如,我有2019年和2020年的数据,只想在一张图表中显示几个月的结果。如何限制给定时间段的数据?我希望2019年有一条线路,2020年有第二条线路 日期 微软团队 2019-01-06 3. 2019-03-10 10 2019-06-09 15 2019-12-29 10 2020-01-06 25 2020-03-10 35 2020-06-09 43 2020-12-29 39 准备数据: dat <- tribble(~Date, ~Teams

如何从不同的日期制作一个图表?例如,我有2019年和2020年的数据,只想在一张图表中显示几个月的结果。如何限制给定时间段的数据?我希望2019年有一条线路,2020年有第二条线路

日期 微软团队 2019-01-06 3. 2019-03-10 10 2019-06-09 15 2019-12-29 10 2020-01-06 25 2020-03-10 35 2020-06-09 43 2020-12-29 39 准备数据:

dat <- tribble(~Date,   ~Teams,
"2019-01-06",   3,
"2019-03-10",   10,
"2019-06-09",   15,
"2019-12-29",   10,
"2020-01-06",   25,
"2020-03-10",   35,
"2020-06-09",   43,
"2020-12-29",   39)

dat <- mutate(dat, Date = parse_date(Date))

我不确定您喜欢哪一种,但这里有两种选择供您选择

操纵数据 情节2
  • 使用
    lubridate
    package
    ymd
    从日期中提取年和月,日期为
    month
    year
  • 将两个因子都设置为
    as.factor
  • 然后用
    ggplot
  • 库(tidyverse)
    图书馆(lubridate)
    df1%
    变异(年=年系数(年(月(日))),
    月=截止系数(月(日))
    )
    ggplot(df1,aes(x=月,y=微软团队,颜色=年,团队=年))+
    几何点()+
    geom_线()
    

    我如何将它分为天和月?我没有指定问题,我有一个总的数据,例如,从给定月份开始的4天,此时图表只对给定月份的数据进行四舍五入。我会更改日期变量,将它们全部放在同一年中,并将x轴设置为该新变量。然后,颜色映射会随着年份的不同而有所区别。那么我如何才能在几年内更改legend的名称呢?@AdrianJaczyński看到了这一点
    dat <- tribble(~Date,   ~Teams,
    "2019-01-06",   3,
    "2019-03-10",   10,
    "2019-06-09",   15,
    "2019-12-29",   10,
    "2020-01-06",   25,
    "2020-03-10",   35,
    "2020-06-09",   43,
    "2020-12-29",   39)
    
    dat <- mutate(dat, Date = parse_date(Date))
    
    dat %>% 
      mutate(years = as.character(year(Date)), months = month(Date, label = TRUE)) %>% 
      ggplot(aes(x = months, y = Teams, colour = years, group = years)) + 
      geom_line()
    
    trendy <- data %>%
      mutate(Date = as.Date(Date),
             year = year(Date),
             date = paste('2000', month(Date), day(Date), sep = '-'),
             date = as.Date(date))
    
    ggplot(data=trendy, aes(x=Date, y=`Microsoft Teams`, color = year)) + 
      geom_line() +
      labs(title="Popularność wyszukiwania hasła Microsoft Teams", x="Data", y="Popularność", caption = "") +
      scale_x_date(date_labels = "%B") +
      theme_bw()
    
    ggplot(data=trendy, aes(x=date, y=`Microsoft Teams`, color = factor(year))) + 
      geom_line() +
      labs(title="Popularność wyszukiwania hasła Microsoft Teams", x="Data", y="Popularność", caption = "") +
      scale_x_date(date_labels = "%B") +
      theme_bw()
    
    library(tidyverse)
    library(lubridate)
    df1 <- df %>% 
      mutate(year = as.factor(year(ymd(Date))),
             month = as.factor(month(Date))
             )
    
    ggplot(df1, aes(x = month, y = Microsoft.Teams, colour = year, group=year)) + 
      geom_point()+
      geom_line()