Wolfram mathematica 如何在mathematica中显示字符矩阵

Wolfram mathematica 如何在mathematica中显示字符矩阵,wolfram-mathematica,Wolfram Mathematica,我有一个列表,比如{1,1},“Q”},{2,3},“E”},{3,5},“Q”},{4,2},“Q”},{5,4},“Q”},{1,5},“E”},我需要在矩形网格中显示字符,例如,在这种情况下,5*5网格中,在(1,1上有一个字符,在

我有一个列表,比如
{1,1},“Q”},{2,3},“E”},{3,5},“Q”},{4,2},“Q”},{5,4},“Q”},{1,5},“E”}
,我需要在矩形网格中显示字符,例如,在这种情况下,
5*5
网格中,在
(1,1
上有一个字符
,在<2,3)上
有一个字母
Q
,…,在
(1,5)
上有一个字母
E
。网格中的所有剩余位置显示为空白

请帮帮我。

就是这样设置的。这也使用了
@@@
,它是级别1的缩写:

dat =
{{{1, 1}, "Q"},
 {{2, 3}, "E"},
 {{3, 5}, "Q"},
 {{4, 2}, "Q"},
 {{5, 4}, "Q"},
 {{1, 5}, "E"}};

SparseArray[Rule @@@ dat, {5, 5}, ""] // MatrixForm

SparseArray
(此处
{5,5}
)的第二个参数是显式数组大小。您可以使用
Automatic
将其调整到数据的最远点。第三个(可选)参数是用作数组“背景”的表达式。在这里,我使用一个空字符串
来满足您对“blank”的请求。由于这变得很难阅读,您可能更喜欢网格线:

Grid[
 SparseArray[Rule @@@ dat, {5, 5}, ""],
 Frame -> All
]

Mr向导答案是最佳答案。但只是为了好玩,这里有一个稍微不同的方法来使用纯函数

Grid[SparseArray[ #[[1]] -> #[[2]] & /@ dat, {5, 5}, ""], Frame -> All]

有一个新的唯一的网站,你可能会感兴趣。我想摆脱矩阵中的0!谢谢