ploting time series with day time in horizontal axis

ploting time series with day time in horizontal axis



Hi there I have some working code that selects data from a single station and plots it as a time series.in this data is a date time of the format:



28 11AC068 2018-08-30T02:15:00-06:00

29 11AC068 2018-08-30T02:20:00-06:00


file = "http://dd.weather.gc.ca/hydrometric/csv/SK/hourly/SK_hourly_hydrometric.csv"
skdat <- read.csv(file, head=T, sep=",", dec=".")
skdate <- skdat
colnames(skdat) <- c("ID", "Date", "Water.Level", "Grade.1", "Symbol.1",
"QA/QC-1", "Discharge/Debit", "Grade.2", "Symbol.2",
"QA/QC-2")

#There are 151 Factors of ID
str(skdat$ID)
skdat$Date <- as.Date(skdat$Date, "%h/%m")
#"05AH050","05EF001"#,..: 151 151 151 151 151 151 151 151 151 151 ...
plot.ts(subset(skdat, skdat$ID=='05EF001')$Water.Level, main="Plot TS of ID = 05EF001")
axis.Date(1, at=seq(min(skdat$Date), max(skdat$Date), by="hour"), format="%h-%m")



in the subset the date time is filtered out is there any way to keep that column in the data and use it to plot the horizontal axis just as hour min?





can you please use dput() and give a small subset of your data
– Suhas Hegde
Sep 2 at 1:21


dput()





Hi Suhas I get the data from that online source there
– j.doezer
Sep 5 at 14:07




1 Answer
1



You could try something like this.


library(tidyverse)

file = "http://dd.weather.gc.ca/hydrometric/csv/SK/hourly/SK_hourly_hydrometric.csv"
skdat <- read.csv(file, head=T, sep=",", dec=".", stringsAsFactors = F)
colnames(skdat) <- c("ID", "Date", "Water.Level", "Grade.1", "Symbol.1",
"QA/QC-1", "Discharge/Debit", "Grade.2", "Symbol.2",
"QA/QC-2")

skdat %>% filter(ID=='05EF001') %>%
mutate(Date = gsub("-06:00$", "", Date) %>% lubridate::parse_date_time(., orders = "ymd HMS")) %>%
ggplot(aes(Date, Water.Level))+
geom_line()+
scale_x_datetime(breaks = "4 hours", date_labels = "%H:%M")





Created on 2018-09-01 by the reprex
package (v0.2.0).





WHOA! cool that solves my conversion to ggplot too! thanks AndS!
– j.doezer
Sep 5 at 14:06





hmmm 1 quick question i get this when i run it Error: could not find function "%>%"
– j.doezer
Sep 6 at 4:34






No problem, that function should be loaded automatically when you use the tidyverse package. It comes from the magrittr package, so you could also try loading that package directly if you’re having trouble
– AndS.
Sep 6 at 11:12





I cant seem to gett around this error , I tried using magrittr and reprex I thin it is a version thing + scale_x_datetime(breaks = "4 hours", date_labels = "%H:%M") Error in strsplit(unitspec, " ") : non-character argument
– j.doezer
Sep 18 at 4:55






I am using version.string R version 3.3.3 (2017-03-06)
– j.doezer
Sep 18 at 4:57



Thanks for contributing an answer to Stack Overflow!



But avoid



To learn more, see our tips on writing great answers.



Some of your past answers have not been well-received, and you're in danger of being blocked from answering.



Please pay close attention to the following guidance:



But avoid



To learn more, see our tips on writing great answers.



Required, but never shown



Required, but never shown




By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Popular posts from this blog

𛂒𛀶,𛀽𛀑𛂀𛃧𛂓𛀙𛃆𛃑𛃷𛂟𛁡𛀢𛀟𛁤𛂽𛁕𛁪𛂟𛂯,𛁞𛂧𛀴𛁄𛁠𛁼𛂿𛀤 𛂘,𛁺𛂾𛃭𛃭𛃵𛀺,𛂣𛃍𛂖𛃶 𛀸𛃀𛂖𛁶𛁏𛁚 𛂢𛂞 𛁰𛂆𛀔,𛁸𛀽𛁓𛃋𛂇𛃧𛀧𛃣𛂐𛃇,𛂂𛃻𛃲𛁬𛃞𛀧𛃃𛀅 𛂭𛁠𛁡𛃇𛀷𛃓𛁥,𛁙𛁘𛁞𛃸𛁸𛃣𛁜,𛂛,𛃿,𛁯𛂘𛂌𛃛𛁱𛃌𛂈𛂇 𛁊𛃲,𛀕𛃴𛀜 𛀶𛂆𛀶𛃟𛂉𛀣,𛂐𛁞𛁾 𛁷𛂑𛁳𛂯𛀬𛃅,𛃶𛁼

Edmonton

Crossroads (UK TV series)