r - 绘制二分加折线图比较

标签 r graph igraph bipartite

我必须绘制一个类似于这个的二分图:
Bipartite graph comparison

我有 2 个排名列表,由两种不同的排名方法计算得出。我想绘制这些数据,以便对 2 个排名列表的相似性进行粗略的定性处理。

我需要显示的数据类似于这些命名向量:

rankMathodA = c(1.5, 4, 7, 3, 4.2)
names(rankMathodA) = c("Team1", "Team2", "Team3", "Team4", "Team5")
rankMathodA
#Team1 Team2 Team3 Team4 Team5 
#  1.5   4.0   7.0   3.0   4.2 

rankMathodB = c(1.7, 3.5, 6.2, 3.9, 4.1)
names(rankMathodB) = c("Team1", "Team2", "Team3", "Team4", "Team5")
rankMathodB
#Team1 Team2 Team3 Team4 Team5 
#  1.7   3.5   6.2   3.9   4.1

最佳答案

这是 ggplot 方法的开始,它对数据进行了一些 reshape 。标签(使用 geom_text 单独添加以控制文本放置。

library(reshape2)
library(ggplot2)

#create a dataframe with all necessary variables
dat <- data.frame(team=c("Team1", "Team2", "Team3", "Team4", "Team5"),
                  rankA=c(1.5, 4, 7, 3, 4.2),
                  rankB=c(1.7, 3.5, 6.2, 3.9, 4.1))
#turn to long
dat_m <- melt(dat,id.var="team")

#plot
ggplot(dat_m, aes(x=variable, y=value, group=team)) +
  geom_line() +
  geom_text(data=dat_m[dat_m$variable=="rankA",],aes(label=team),hjust=1.1) +
  geom_text(data=dat_m[dat_m$variable=="rankB",],aes(label=team),hjust=-0.1) +
  geom_vline(xintercept = c(1,2)) +
  #hide axis, labels, grids.
  theme_classic() +
  theme(
    axis.title = element_blank(),
    axis.line = element_blank(),
    axis.text = element_blank(),
    axis.ticks = element_blank())

enter image description here

关于r - 绘制二分加折线图比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33667626/

相关文章:

r - 明确地选择 data.table 中与另一个 data.table 中的行匹配的行

mysql - RMySQL - 自动从数据库表中读取数据

r - 一个 R Shiny 问题 - 在一张图上绘制多条线

regex - 从未知(对我来说)编码中删除不可打印的空格

c# - WinForms 应用程序中是否可以有图表和图形?

javascript - 多线序数 d3 图表

python - 检查两个顶点是否在 iGraph 中连接

python - python-igraph 错误 'module' 对象没有属性 'Graph'

python - 在 igraph [python] 中将两个有向边折叠成一个

r - 如何生成和绘制所有生成树?