library("ggplot2")
d1 <- data.frame(name=c("A","B", "C", "D", "E"))
d1$period <- 1
d1$rank <- c(1,2,3,4,5)

d2 <- d1
d2$period <- 2
d2$rank <- c(1,4,5,3,2)


d <- rbind(d1, d2)
d$rank_c <- as.factor(d$rank)
d$rank_dist <- abs(d2$rank - d1$rank)
d$period <- as.factor(d$period)

Поля:

ggplot(d, aes(x = period, y = -rank, label = paste0(rank, ". ", name))) +
  geom_text(size = 3.5) +
  geom_path(aes(group = name, colour=rank_c, size=log(abs(rank_dist)+1)), alpha = 0.25)

plot of chunk unnamed-chunk-3