表与矩阵
列表的表格和矩阵形式.
| Out[1]= |  |
| Out[2]= |  |
Out[3]//TableForm= |
| |  |
Grid 和
Column 是封装,不进行计算,只是把内容排版成合适的形式. 它们是排版结构,需要前端正确呈现.
| Out[4]= |  |
Out[5]//FullForm= |
| |  |
这些封装都可以用来表示任何类型的数据,包括图形数据.
| Out[6]= |  |
显示数值表格.
| Out[7]= |  |
| Out[8]= |  |
Out[9]//PaddedForm= |
| |  |
| Out[10]= |  |
Out[11]//PaddedForm= |
| |  |
在 Grid 中代表跨越的符号.
Grid 把矩形矩阵作为其第一个参数. 通过指定跨越区域,
Grid 的单个元素可以跨越多行,多列或一个矩阵子网格. 横跨元素总是在跨越区域的左上角,剩下的区域由适当的跨越符号填补.
| Out[12]= |  |
| Out[13]= |  |
| Out[14]= |  |
影响 Grid 作为一个整体的行为的一些选项.
| Out[15]= |  |
| Out[16]= |  |
| Out[17]= |  |
| Out[18]= |  |
| Out[19]= |  |
设置整个
Grid 基本样式为 Subsection 样式.
| Out[20]= |  |
Column 是只有一列的
Grid 的缩写. 由于这两个函数是相似的,它们可以用相同的选项.
| Out[21]= |  |
影响 Grid 行和列的一些选项.
影响行和列的
Grid 选项都有一个类似的语法. 这些选项可以指定为

,其中
x 适用于所有列和
y 适用于所有行;
x 和
y 可以是单个值,也可以是值的集合,依次代表每列或行.
| Out[22]= |  |
| Out[23]= |  |
| Out[24]= |  |
当
Background 或
ItemStyle 选项对行和列指定不同的设置,在行和列重叠处前端将尝试组合设置.
| Out[25]= |  |
| Out[26]= |  |
要在多个行或列中重复个别行或列的规格,可以把它包装在一个列表中. 重复的元素会尽可能的被使用. 如果你在列表中包装多个元素,整个列表将按序重复.
| Out[27]= |  |
| Out[28]= |  |
ItemSize 和
Spacings 选项的ems的水平测量和行高的垂直测量是基于目前的字体设置. 这两个选项也可以采取
Scaled 按比例坐标,坐标指定总的单元宽度或窗口高度的比例. 通过使用关键字
Full,
ItemSize 选项也可让您要求尽可能多的空间,使得所有元素都适合给定的行或列.
| Out[29]= |  |
| Out[30]= |  |
在这个例子中的按钮大小始终是一个单元格宽度的四分之一.
| Out[31]= |  |
| Out[32]= |  |
Item 的一些选项.
通过使用
Item,适用于整个行和列的许多设置也适用于
Grid 或
Column 中个别的的项.
Item 允许您更改一个单项的这些设置. 在
Item 级别上定义的设置总是作为一个整体覆盖
Grid 或
Column 的设置.
| Out[33]= |  |
| Out[34]= |  |
Item 的大多数选项采取与
Grid 同样的设置. 但是,
Alignment 和
ItemSize 选项例外,在
Grid 中允许复杂的行和列设置,在
Item 中只采取

设置.
| Out[35]= |  |
| Out[36]= |  |
| Out[37]= |  |
多维数据格式化
Column 支持一维数据,
Grid 支持二维数据. 可以使用
TableForm 打印任意维的数据.
以下是元素

的2×2数组的格式.
Out[39]//TableForm= |
| |  |
Out[40]//TableForm= |
| |  |
Out[41]//TableForm= |
| |  |
一般来说,当您打印一个

维表,相连的维是以列和行交替给出的. 通过设置选项
TableDirections
,其中

是
Column 或
Row, 您可以明确指定每个维度的方向. 默认情况下,该选项设为
{Column, Row, Column, Row, ...}.
Out[42]//TableForm= |
| |  |
TableForm 可以处理任意不规则数组. 没有元素时,用空白填补.
Out[43]//TableForm= |
| |  |
Out[44]//TableForm= |
| |  |
您可以在嵌套列表中控制层次,在
TableForm 中设置选项
TableDepth.
Out[45]//TableForm= |
| |  |
| | |
| TableDepth | Infinity | 表格中所包含的最大层数 |
| TableDirections | {Column,Row,Column,...} | 每一维是否按行或列排列 |
| TableAlignments | {Left,Bottom,Left,...} | 每一维中如何对齐元素 |
| TableSpacing | {1,3,0,1,0,...} | 在每一维中加多少空格 |
| TableHeadings | {None,None,...} | 怎样标记每一维的元素 |
TableForm 的选项.
使用
TableAlignments 选项,您可以指定表中的每个项应该是行对齐或列对齐. 对于列,您可以指定
Left、
Center 或
Right. 对于行,您可以指定
Bottom、
Center 或
Top. 如果设置
TableAlignments->Center,所有项水平和垂直方向均会中心对齐.
TableAlignments->Automatic 使用对齐的缺省选项.
Out[46]//TableForm= |
| |  |
Out[47]//TableForm= |
| |  |
可以用
TableSpacing 选项指明连续的列间应该有多少水平空隙,或连续的行间应该有多少垂直空隙. 设置为

指定连续对象应紧挨着.
Out[48]//TableForm= |
| |  |
TableHeadings 选项的设置
Out[49]//TableForm= |
| |  |
Out[50]//TableForm= |
| |  |
Out[51]//TableForm= |
| |  |