Mam zestaw znaczników czasu UNIX i identyfikatorów URI i próbuję wykreślić łączną liczbę żądań dla każdego identyfikatora URI. Udało mi się to zrobić za jednym URI w czasie, stosując kolumnę atrapę:ggplot2 i cumsum()
x.df$count <- apply(x.df,1,function(row) 1) # Create a dummy column for cumsum
x.df <- x.df[order(x.df$time, decreasing=FALSE),] # Sort
ggplot(x.df, aes(x=time, y=cumsum(count))) + geom_line()
jednak, że byłoby zrobić około 30 działek w moim przypadku.
ggplot2 nie pozwala wykreślić wiele linii w jednej działce (skopiowałem ten kawałek kodu z here):
ggplot(data=test_data_long, aes(x=date, y=value, colour=variable)) +
geom_line()
Problemem jest to, że w ten sposób, cumsum()
liczyłbym dalej.
Czy ktoś ma pomysł?
można podać mały przykład zbiór danych, który ilustruje to, co opisujesz? – joran
to brzmi jak zadanie dla 'plyr' lub' data.table'. Podziel dane przez URI, a następnie na 'cumsum' na każdym kawałku. 'data.table (x); x [, list (count = .I), by = URI] 'Lub coś w tym stylu ... – Justin