jon*_*jon 4 graphics plot r graph
这是我的数据:
ind <- c( rep(1, 20), rep (2, 20), rep (3, 20), rep(4, 20))
bar <- c(rep(rep(1:4, each = 5), 4))
mark <- c(rep ("A", 5), rep("B", 5), rep("C",5), rep("D",5),
rep("B", 20), rep("C", 20), "A", "B", "C", "A", "C","A",
"D", "D", "D", "D","A", "C", "C", "A", "B", "B","B",
"C","C","C")
dataf <- data.frame(ind, bar, mark)
Run Code Online (Sandbox Code Playgroud)
每个人(ind)按顺序有4个条形,并且颜色为fomatted.个人之间应该有更大的空间.我可能有任意数量的人.在excel中绘制了以下预期图形,我想在R中创建更漂亮的图形.

请注意,每个ind级别(1:4)为四栏(1:4).每个ind的所有四个条都分组在一个地方.
您可以尝试使用该rect功能单独绘制每个矩形.尝试运行循环来遍历堆栈中的每个框:
par(mfrow=c(2, 2))
for(i in unique(ind)) {
plot(0, col=0, bty="n", xaxt="n", yaxt="n", xlab = i, ylab = "", xlim=c(0, 5), ylim=c(-6, -1))
for(j in 1:4) {
for(k in 1:5) {
rect(j-0.4, -k-1, j+0.4, -k, col = which(unique(mark)==matrix(mark[ind==i], 5, 4)[k,j])+1, border = rgb(0,0,0,0))
text(j, -k-0.5, labels = matrix(mark[ind==i], 5, 4)[k,j])
}
rect(j-0.4, -6, j+0.4, -1)
}
}
Run Code Online (Sandbox Code Playgroud)
