In the my data frame I have two columns, they are both date objects (Date1, Date2). I want to draw a line of both of the date objects and place them into the same plot, but can't find a way. Should I use pivot_longer
?
The plot with one variable
df %>%
mutate(week = week(Date1)) %>%
ggplot(aes(week)) +
geom_freqpoly()
Data
structure(list(Date1 = structure(c(1583712000, 1583712000, 1583712000,
1584144000, 1584316800, 1584489600, 1585094400, 1585267200, 1585267200,
1588550400, 1589414400, 1591228800, 1592179200, 1597104000, 1597363200,
1597881600, 1605052800, 1605484800, 1614902400, 1580256000, 1582502400,
1582761600, 1582848000, 1583107200, 1583107200, 1583712000, 1583712000,
1583884800, 1583884800, 1584316800, 1584316800, 1584316800, 1584316800,
1584316800, 1584316800, 1584316800, 1584489600, 1584921600, 1585180800,
1585267200, 1587513600, 1591228800, 1602460800, 1604016000, 1613779200,
1613779200, 1614038400, 1615852800, 1615852800, 1615852800, 1623024000,
1624233600, 1629244800, 1630281600, 1582588800, 1582848000, 1582848000,
1583193600, 1583193600, 1583193600, 1583280000, 1583712000, 1583712000,
1583712000, 1583884800, 1583884800, 1583971200, 1583884800, 1615593600,
1615939200, 1584489600, 1584662400, 1584662400, 1584662400, 1584921600,
1585094400, 1585180800, 1585180800, 1585526400, 1585785600, 1586304000,
1587600000, 1586131200, 1586131200, 1586217600, 1586908800, 1587340800,
1587340800, 1587340800, 1587340800, 1587513600, 1587600000, 1587945600,
1588032000, 1588723200, 1589155200, 1589241600, 1589414400, 1589760000,
1589760000, 1589932800, 1590969600, 1596240000, 1596240000, 1598832000,
1601510400, 1601596800, 1602720000, 1602547200, 1602547200, 1602547200,
1603152000, 1604620800, 1604620800, 1605225600, 1605225600, 1606435200,
1606435200, 1607644800, 1607644800, 1578355200, 1610323200, 1607904000,
1610582400, 1611532800, 1580169600, 1613692800, 1613692800, 1583280000,
1583366400, 1615334400, 1616716800, 1618358400, 1618790400, 1619049600,
1619568000, 1619395200, 1622073600, 1623024000, 1612915200, 1620777600
), class = c("POSIXct", "POSIXt"), tzone = "UTC"), Date2 = structure(c(1579824000,
1579824000, 1581552000, 1582243200, 1583193600, 1583193600, 1583366400,
1583366400, 1583366400, 1583452800, 1583971200, 1585526400, 1583971200,
1583971200, 1584057600, 1584057600, 1584316800, 1584316800, 1584489600,
1584576000, 1584576000, 1584662400, 1585267200, 1585267200, 1585526400,
1585785600, 1585785600, 1585872000, 1586390400, 1586908800, 1587600000,
1587945600, 1588032000, 1588032000, 1588636800, 1588809600, 1588809600,
1589241600, 1589414400, 1591660800, 1592438400, 1596412800, 1596499200,
1597190400, 1598486400, 1598572800, 1598572800, 1600300800, 1603411200,
1604275200, 1606348800, 1606521600, 1606780800, 1607472000, 1611273600,
1611705600, 1612224000, 1614211200, 1614556800, 1616025600, 1616025600,
1618444800, 1618444800, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,
NA, NA, NA, NA), class = c("POSIXct", "POSIXt"), tzone = "UTC")), row.names = c(NA,
-141L), class = c("tbl_df", "tbl", "data.frame"))
Here is a simple solution, using colors to differentiate the dates
library(lubridate)
library(tidyverse)
df %>%
ggplot()+
geom_freqpoly(aes(week(Date1), col = "Date1"))+
geom_freqpoly(aes(week(Date2), col = "Date2"))