task-6329: group relays while doing the selection
[tor-metrics-tasks/delber.git] / task-3260 / client-speed-trends.R
blob8f389e0fad7fcf351c5be1a406f27a5308936702
1 library(ggplot2)
2 c <- read.csv("out/client-speed-trends.csv", stringsAsFactors = FALSE)
3 c <- c[as.Date(c$date) < max(as.Date(c$date)) - 1, ]
5 ggplot(c, aes(x = as.Date(date), y = lines * 2)) +
6 geom_line() +
7 scale_y_continuous(name = "Directory mirrors reporting statistics\n",
8   limits = c(0, max(c$lines) * 2))
10 ggplot(c, aes(x = as.Date(date), y = complete)) +
11 geom_line()
13 d <- c
14 d[d$lines < 5, c("lines", "p10", "p20", "p30", "p40", "p50")] <- NA
15 d <- d[, c("date", "lines", "p10", "p20", "p30", "p40", "p50")]
16 d <- melt(d, id.vars = c("date", "lines"))
17 ggplot(d, aes(x = as.Date(date), y = value / 1024, colour = variable,
18   alpha = log(lines))) +
19 geom_line() +
20 scale_x_date(name = "", limits = as.Date(c(min(d[!is.na(d$value), "date"]),
21   max(d[!is.na(d$value), "date"]))), format = "%Y") +
22 scale_y_continuous(name = "", limits = c(0, 200)) +
23   #limits = c(0, max(d$value, na.rm = TRUE) / 1024)) +
24 scale_colour_hue(name = "Percentile",
25   breaks = c("p50", "p40", "p30", "p20", "p10"),
26   labels = seq(50, 10, -10), h.start = 60) +
27 scale_alpha(legend = FALSE) +
28 opts(title = "Estimated client bandwidth in KiB/s\n")
29 ggsave("client-speed-trends.png", width = 8, height = 5, dpi = 72)