通过R中的图表可视化两个离散变量的关联

时间:2018-01-31 18:30:56

标签: r diagram

假设两个变量(stategroup)。 state s )的实例可以共享具有group g )的特定实例的属性。例如, s1 s2 s3 可能与 g1 有关联。

我想以图表的形式将两个变量之间的关联可视化,如下所示:

enter image description here

我想用R.生成这样一个图表。你建议我使用哪个R包?

1 个答案:

答案 0 :(得分:2)

根据lukeA的建议,我提出了以下代码来解决上述需求。

在Shell中:

$ cat table
s1  g1
s2  g1
s3  g1
s4  g2
s5  g2
s6  g2
s7  g3
s8  g4
s9  g5
s10 g5

在R:

library(igraph)

# Reading data from file
m <- as.matrix(read.table(file="~/Desktop/table", sep="\t"))

# Generating igraph
g <- graph_from_edgelist(m, directed=FALSE)
V(g)$type <- bipartite.mapping(g)$type
coords <- layout_as_bipartite(g)

# Plotting operations
plot.igraph(g, layout = -coords[,2:1]) # Preliminary plotting (why necessary?)
plot.igraph(g, layout = -coords[,2:1],
    vertex.shape="rectangle", # For vertex.foo and edge.foo commands, see: http://igraph.org/r/doc/plot.common.html
    vertex.size=50,
    vertex.size2=20,
    vertex.color=NA,
    vertex.label.color= "black")

# Adding title to plot
title("My first igraph")

enter image description here