Chcę wykreślić kilka histogramów danych czasowych (1 tydzień) na tym samym wykresie co linie.Histogramy wydruku jako linie
Mam dane czasu:
> dput(head(ts))
structure(c(1364421605.227, 1364375025.034, 1364376298.393, 1364375002.928,
1364393158.084, 1364423268.856), class = c("POSIXct", "POSIXt"))
i chcę wykreślić jego histogram. hist(ts,breaks=7*24)
działa dobrze, ale korzysta z typu plotowania h
, który zasłoni inne wykresy histogramu, które chcę dodać (wiem, że mogę używać przezroczystych kolorów - rainbow
z alpha=0.5
, ale naprawdę chcę zobaczyć linie).
Próbowałem
> hist(ts, breaks = 7*24, type="l")
Warning messages:
1: In title(main = main, sub = sub, xlab = xlab, ylab = ylab, ...) :
graphical parameter "type" is obsolete
Calls: hist -> hist.POSIXt -> myplot -> plot -> plot.histogram -> title
2: In axis(2, ...) : graphical parameter "type" is obsolete
Calls: hist -> hist.POSIXt -> myplot -> axis
3: In axis(side, at = z, labels = labels, ...) :
graphical parameter "type" is obsolete
Calls: hist -> hist.POSIXt -> myplot -> axis.POSIXct -> axis
dlaczego hist
przechodząc type
do title
?
można utworzyć obiektu histogramu i wykreślić oddzielnie:
> h <- hist(ts, breaks=7*24, plot=FALSE)
> plot(x=h$mids, y=h$density, type="l")
ale oś x
jest oznaczony numerami (E.D. „1364421605”) nie daty (na przykład „25 marca”).
Domyślam się, że mam użyć axis
, ale wolałbym tego nie robić - ostatecznie, hist
konstruuje tylko oś, której chcę!
Dzięki!
Cóż, wydaje się, że 'hist' dosłownie nie jest zbudowany, aby to zrobić. Jeśli spojrzysz na kod dla metod wykresu, to dosłownie ma on prostokąty zakodowane na stałe za pomocą wezwania do 'rect'. W metodach POSIX-a ma on rozbudowany kod do konstruowania osi, które lubisz. Prawdopodobnie będziesz musiał skopiować tę konstrukcję osi (lub może istnieć funkcja drukowania w pakiecie, która już to robi, kto wie). – joran
Ponadto, można zobaczyć przekaz nieużywanych argumentów do 'title' na stronie pomocy dla' hist', szczególnie w sekcji '...'. – Justin
Jeśli użyjesz 'ggplot' zamiast tego możesz umieścić różne histogramy obok siebie (używając różnych kolorów, jeśli chcesz), co spowoduje, że cały problem będzie dyskusyjny. Zobacz np. http://docs.ggplot2.org/0.9.3/geom_histogram.html – eddi