在R中创建网格图片

在R中创建网格图片,r,graph,grid,R,Graph,Grid,我想创建一个10x10的网格图片(我不知道最好叫它什么),它查看df中的值,并根据df中的值为相关网格着色 例如,我有一个df,如下所示(为了简单起见,我使用了5x5作为示例): column这是一张热图。您可以在ggplot2中这样做: 库(ggplot2) ggplot(df,aes(列,行,填充=as.factor(类))+ geom_瓷砖()+ 刻度填充手动(值=c(“蓝色”、“绿色”、“红色”、“黄色”), 标签=0:3,name=“class”) 由(v0.3.0)于2020年7

我想创建一个10x10的网格图片(我不知道最好叫它什么),它查看df中的值,并根据df中的值为相关网格着色

例如,我有一个df,如下所示(为了简单起见,我使用了5x5作为示例):


column这是一张热图。您可以在ggplot2中这样做:

库(ggplot2)
ggplot(df,aes(列,行,填充=as.factor(类))+
geom_瓷砖()+
刻度填充手动(值=c(“蓝色”、“绿色”、“红色”、“黄色”),
标签=0:3,name=“class”)


由(v0.3.0)于2020年7月13日创建的热图。所以类似于
df%>%ggplot2(aes(x=column,y=row,fill=class))%%>%geom\u tile()
。未经测试的代码。您可能需要离散比例:
ggplot(df,aes(y=row,x=column,fill=factor(class))+geom_tile()
谢谢!热图!当然有时候,这是人们忘记的最简单的事情。这是非常有效的。再次感谢。
column <- c(rep(c(1),5),rep(c(2),5),rep(c(3),5),rep(c(4),5),rep(c(5),5))
row <- rep(1:5, 5)
ID <- c(11:15, 21:25, 31:35, 41:45, 51:55)
class <- c(0,0,1,2,1,2,2,3,0,1,2,3,1,2,0,1,0,0,2,3,3,2,2,2,1)
df <- data.frame(column, row, ID, class)