绘制三角形网格表面

时间:2020-01-14 22:57:38

标签: python matplotlib plot

我正在尝试使用以下代码在2D三角形非结构化网格上绘制使用FEM计算的解决方案:

import matplotlib.pyplot as plt

from matplotlib import cm

# This import registers the 3D projection, but is otherwise unused.
from mpl_toolkits.mplot3d import Axes3D  # noqa: F401 unused import


# set up a figure twice as wide as it is tall
fig = plt.figure(figsize=plt.figaspect(0.5))

# set up the axes for the first plot
ax = fig.add_subplot(1, 2, 1, projection='3d')

# plot a 3D surface
surf = ax.plot_trisurf(x, y, XX, cmap=cm.viridis,
                       linewidth=0, antialiased=False)
ax.set_zlim(-100.01, 100.01)
ax.view_init(elev=90, azim=-90)
fig.colorbar(surf, shrink=0.5, aspect=10)

其中x和y-分别是节点的x和y坐标的数组,XX-某些函数的节点值的数组。我得到以下输出-参见所附图片。问题是,在左侧应该有一个洞穴-即没有数据的空白空间,但是在该图上可以看到还有一些形状怪异的颜色填充三角形。有什么方法可以使它看起来像第二张图片(由Matlab制作)吗?另外还有一个问题-是否有办法关闭此透视3D视图并使它像第二个屏幕截图一样像投影一样?

python plot matlab plot

0 个答案:

没有答案
相关问题