0

我正在尝试扩展这样的功能:(4x4 正方形)

ListPointPlot3D[Table[{x, y, 0}, {x, 0, 4, 1}, {y, 0, 4, 1}]]

变成这样的东西:(一个 4x4x4 立方体)

ListPointPlot3D[Table[{x, y, z}, {x, 0, 4, 1}, {y, 0, 4, 1}, {z, 0, 4, 1}]]

通过添加第三维。

但是,后者的尺寸似乎不正确。它似乎形成了一个 3d 点的 2x2 矩阵,而不是一个列表。

任何想法如何解决这一问题?

4

1 回答 1

1

如果你再仔细看一下,你会看到这个表达式

Table[{x, y, z}, {x, 0, 4, 1}, {y, 0, 4, 1}, {z, 0, 4, 1}]

返回一个带有5x5x5三元组的结构。这正是表达式应该返回的内容。如果将Dimensions[]函数应用于返回的结构,您可以看到这一点。

有几种方法可以将表格变成125个三元组的列表,一种是这样Flatten使用

Flatten[Table[{x, y, z}, {x, 0, 4, 1}, {y, 0, 4, 1}, {z, 0, 4, 1}], 2]

或者您可以直接生成您的三胞胎列表;对于您的示例,一种替代方法是

Tuples[Range[0, 4], 3]
于 2013-03-10T11:01:36.817 回答