在 3D 空间中绘制相交平面

问题描述 投票:0回答:1

我尝试使用plotly在3D空间中绘制3个平面,我只能沿XY平面定义一个表面,而ZY和XZ不会出现。

我在下面提供了一个简单的示例,我希望代码生成在点 (1, 1, 1) 相交的三个平面,而在 (x, y) = 1 处只有一个表面。

任何帮助将不胜感激。

import plotly.graph_objects as go
import numpy as np

zsurf = go.Surface(y=[0, 1, 2], x=[0, 1, 2], z=np.ones((3, 3)))
ysurf = go.Surface(x=[0, 1, 2], z=[0, 1, 2], y=np.ones((3, 3)))
xsurf = go.Surface(z=[0, 1, 2], y=[0, 1, 2], x=np.ones((3, 3)))
fig = go.Figure()
fig.add_trace(zsurf)
fig.add_trace(ysurf)
fig.add_trace(xsurf)

fig.show()

python graph plotly
1个回答
0
投票

所有的 x、y、z 应该具有相同的形状。

我什至不显示你的一架飞机的默认 UB。但它们都没有被正确指定。

你的意思是

import plotly.graph_objects as go
import numpy as np

xx,yy=np.meshgrid([0,1,2], [0,1,2])
zsurf = go.Surface(y=xx, x=yy, z=np.ones((3, 3)))
ysurf = go.Surface(x=xx, z=yy, y=np.ones((3, 3)))
xsurf = go.Surface(z=xx, y=yy, x=np.ones((3, 3)))
fig = go.Figure()
fig.add_trace(zsurf)
fig.add_trace(ysurf)
fig.add_trace(xsurf)

fig.show()

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.