Zaman serileriyle bir data.frame
sahibim. İçinde NA
da var, ayrıca bir satırın farklı bölümlerini vurgulamak için kullanmak istediğim bir faktör var.R? 'Daki bazı faktörlere göre renklendirilmiş segmentleri ile seyrek (boşluklu) çizgi çizmek nasıl yapılır?
flow.mndnr <- function(id, start, end) {
uri <- sprintf("http://maps1.dnr.state.mn.us/cgi-bin/csg.pl?mode=dump_hydro_data_as_csv&site=%s&startdate=%s&enddate=%s", id, start, end)
dat <- read.csv(url(uri), colClasses=c(Timestamp="Date"))
rng <- range(dat$Timestamp)
d <- data.frame(Timestamp=seq(rng[1], rng[2], by='day'))
merge(d, dat, all.x=TRUE)
}
dat <- flow.mndnr("28062001", as.Date("2002-04-02"), as.Date("2011-10-05"))
Ben koşulsuz
library(lattice)
xyplot(Discharge..cfs. ~ Timestamp, dat, type='l', cex=0.5, auto.key=TRUE)
bunu çizebilirsiniz Ama faktörüne
xyplot(Discharge..cfs. ~ Timestamp, dat, type='l',
groups=dat$Discharge..cfs..Quality, cex=0.5, auto.key=TRUE)
tanıtmak denediğimde bağlantı hatları kurtulmak olamazggplot2
dat$quality <- dat$Discharge..cfs..Quality
ggplot(dat, aes(x=Timestamp, y=Discharge..cfs.)) +
geom_path(aes(colour=quality)) + theme(legend.position='bottom')
ile
aynı basari geom_line
çalıştı. ggplot2 mailing archive'da okudum, geom_path
'un yolu bu. Ama benim için pek işe yaramıyor.
P.S. Neden ggplot2 bir isimde noktalara benzemediğinden, başka bir tane kullanmak zorunda kaldım?
+1! çünkü ggplot2 ve kafes denediniz! tekrarlanabilir örnek ve net bir soru. – agstudy
Re: noktalar, düzgün çalışmak için, ggplot argümanlarının adil bir şekilde değerlendirilmesini yapmak zorundadır, bu yüzden orada bir şeyler yanlış gidiyor olabilir. Genel olarak, sütun isimlerinizi temizlemek için iyi bir uygulama olarak düşünülecektir. Örneğin, noktaları kaldırmak için basit bir "gsub". – joran