Add graphing code for bandwidth by version (13634).
[tor-metrics-tasks.git] / task-1991 / torperf-guard-bandwidths-ranks.R
blob8e7eb0a2b8b261995ecf2fabed041e0435036ae2
1 library(ggplot2)
3 # Read data
4 data <- read.csv("torperf-guard-bandwidths-ranks.csv",
5   stringsAsFactors = FALSE)
7 data <- data[(data$filesize == "50kb" & data$completiontime < 60000) |
8              (data$filesize == "1mb" & data$completiontime < 120000) |
9              (data$filesize == "5mb" & data$completiontime < 300000), ]
11 data[data$guards == "slow", "guards"] <- "a) slowest overall"
12 data[data$guards == "slowratio", "guards"] <- "b) slowest ratio"
13 data[data$guards == "regular", "guards"] <- "c) default"
14 data[data$guards == "fastratio", "guards"] <- "d) fastest ratio"
15 data[data$guards == "fast", "guards"] <- "e) fastest overall"
16 data[data$filesize == "50kb", "filesize"] <- "a) 50 KB"
17 data[data$filesize == "1mb", "filesize"] <- "b) 1 MB"
18 data[data$filesize == "5mb", "filesize"] <- "c) 5 MB"
20 ggplot(data, aes(x = bandwidth / 1000, y = completiontime / 1000)) +
21 geom_point(alpha = 0.05) +
22 scale_x_continuous("\nGuard consensus bandwidth in MB/s") +
23 scale_y_continuous("Torperf completion time in seconds\n") +
24 facet_grid(filesize ~ guards, scale = "free_y") +
25 opts(legend.position = "none")
26 ggsave(filename = "torperf-guard-bandwidths.png",
27   width = 8, height = 5, dpi = 150)
29 ggplot(data, aes(x = as.numeric(rank), y = completiontime / 1000)) +
30 geom_point(alpha = 0.05) +
31 scale_x_continuous(paste("\nGuard rank by consensus bandwidth from",
32   "slowest (0) to fastest (1)"), limits = c(0, 1),
33   breaks = c(0.25, 0.5, 0.75)) +
34 scale_y_continuous("Torperf completion time in seconds\n") +
35 facet_grid(filesize ~ guards, scale = "free_y") +
36 opts(legend.position = "none")
37 ggsave(filename = "torperf-guard-ranks.png",
38   width = 8, height = 5, dpi = 150)