我有一个N * M矩阵,我想在R中使用image()进行可视化。但是,默认情况下是将最后一列设为第一行。如何变换我所拥有的矩阵,以便图像显示矩阵,其中第1行第1列是图像的左上角位置?
以下是一个例子:
dat = c(0, 0.333333333333333, 0, 0, 0, 0, 0, 0.196428571428571, 0.303571428571429,
0.214285714285714, 0.0535714285714286, 0.0357142857142857, 4e-05,
0.0522875816993464, 0.245098039215686, 0.333333333333333, 0.274509803921569,
0.0130718954248366, 0.00264106145251397, 0.00846262341325811,
0.148095909732017, 0.337094499294781, 0.411847672778561, 0.0578279266572638,
0.0435311336717428, 0.00511073253833049, 0.0604770017035775,
0.240204429301533, 0.552810902896082, 0.117546848381601, 0.139510231023102,
0.00668896321070234, 0.0301003344481605, 0.1438127090301, 0.42809364548495,
0.374581939799331)
mat = matrix(dat,6,6)
image(mat)
答案 0 :(得分:0)
因此,您需要切换行和列(转置函数)并反转行的顺序。
mat2 = t(mat)[6:1,]
image(mat2)