2013-03-10 53 views
0

我想这样的功能扩展:通过添加第三维(A型4x4x4立方体)用第三个变量扩展ListPointPlot3D?

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

:(4×4平方)

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

弄成这个样子。

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

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

回答

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]