如何使用像素矩阵在同一图上定位多个图像

时间:2017-04-10 15:54:36

标签: r image plot machine-learning

我试图使用您在此处找到的kaggle数据集在同一个图上说明100个随机训练示例:https://www.kaggle.com/c/digit-recognizer/data

我能够一个接一个地绘制数字,但不能在同一个地块上绘制:

  par(mfrow=c(5,5))

for(i in sample(2:length(data),100,replace=FALSE)){      
    dat <- matrix(as.numeric(data[i,1:784]/256),ncol=28,nrow=28,byrow=TRUE)
    image(dat, axes=TRUE,col=grey(seq(0,1,length=256)))
}

我想做的是这样的事情:

Plot digits

我无法弄清楚如何指定每个像素的位置....

谢谢!

1 个答案:

答案 0 :(得分:2)

快速解决方案是使用mar将边距(0)设置为par

par(mfrow=c(5,5), mar=c(0,0,0,0))

for(i in sample(2:length(data),100,replace=FALSE)){      
    dat <- matrix(as.numeric(data[i,1:784]/256),ncol=28,nrow=28,byrow=TRUE)
    image(dat, axes=FALSE,col=grey(seq(0,1,length=256)))
}

如果您想在外面使用边框,请将oma中的par设置为值&gt; 0。 E.g。

par(mfrow=c(5,5), mar=c(0,0,0,0), oma=c(2,2,2,2))