2013-03-10 74 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]