2012-05-25 73 views
4

我有k個立方體的(n,n,n)強度值,我想繪製它們。繪製3D強度數據的立方體

我認爲它們是擴散MRI中的擴散張量,我想將它們形象化(可能是橢圓體),然後嘗試以某種方式「對齊」。目前我只是繪製每個立方體的n個「切片」(n,n)

這個任務有沒有python模塊?

+0

目前還不清楚其中的「橢圓」的額外信息會來自。對於每個元組'(x,y,z)',你大概都有一個與其相關的標量值'v'。要在該點放置一個橢球體,您需要四個點的數據,兩個角度值以及主軸和副軸的長度。 – Hooked

+0

我認爲你的「立方體」是相應擴散張量的三個特徵值。你喜歡繪製一個橢圓體,其半軸長度對應於這三個特徵值嗎?你想用哪個標準來對齊這些橢球? –

+0

每個立方體代表一種組織體素,因此爲了正確比較它們,我需要對齊它們。對於每個立方體,我認爲我應該計算其擴散張量並將其旋轉到主軸。 –

回答

5

您可以使用mayavi2。由於我沒有你的數據的表示,我給了一個最小的工作示例超過下方的網格一些隨機領域:

import numpy 
import mayavi.mlab as mlab 

# Create some random data 
N = 20 
x, y, z = numpy.mgrid[-5:5:20j, -5:5:20j, -5:5:20j] 
val = numpy.random.random(z.shape) 

# Plot and show in mayavi2 
pts = mlab.points3d(x, y, z, val, scale_factor=.5,transparent=True) 
mlab.show() 

enter image description here

+1

謝謝,它的工作原理! (與enthought.mayavi,而不是簡單的mayavi) –

+1

'enthought.mayavi'和'mayavi'之間的區別就是你首先安裝了'mayavi'庫。前者來自Enthought分佈。 – Hooked