相关疑难解决方法(0)

在matplotlib中显示最大表面?

我正在使用matplotlib在同一个图上绘制多个曲面,我想只看到最顶层的曲面,就像matlab所示.

Matlab 3D视图: Matlab 3D视图

Matlab顶视图: Matlab顶视图

Matplotlib 3D视图: Matplotlib 3D视图

Matplotlib顶视图: Matplotlib顶视图

我怎样才能让Matplotlib显示类似于Matlab的结果,其中最顶层的类显示在顶部,而不是一个类优先于另一个?

matlab plot matplotlib surface

18
推荐指数
2
解决办法
1873
查看次数

使用python,numpy和matplotlib绘制蒙面曲面图

我正在使用matplotlib 1.1.0绘制表面.

绘图Z轴被掩盖如下:

Zm = ma.masked_where((abs(z_grid) < 1.09) & (abs(z_grid) > 0.91), (z_surface))
surf = ax.plot_surface(X, Y,Zm, rstride=2, cstride=2, cmap=colors,linewidth=0, antialiased=False)
Run Code Online (Sandbox Code Playgroud)

但我没有看到在情节上应用的面具.我将面具本身绘制为子图

surf = ax.plot_surface(X, Y,ma.getmask(Zm), rstride=2, cstride=2, cmap=colors,linewidth=0, antialiased=False)
Run Code Online (Sandbox Code Playgroud)

哪个有效,所以我知道我的面具实际上包含真值.

完整代码:

from pylab import *
import matplotlib.pyplot as plt
from matplotlib.widgets import Button
import numpy
from mpl_toolkits.mplot3d.axes3d import Axes3D
from  matplotlib import patches
from matplotlib.figure import Figure
from matplotlib import rcParams


fig = plt.figure(figsize=plt.figaspect(0.5))
ax = fig.add_subplot(1, 2, 1,projection='3d')

pole_positions_orig = [-0.6+0.73j];
zero_positions_orig = [0.29-0.41j];

surface_limit = 1.7;
min_val …
Run Code Online (Sandbox Code Playgroud)

python numpy matplotlib

8
推荐指数
2
解决办法
6014
查看次数

标签 统计

matplotlib ×2

matlab ×1

numpy ×1

plot ×1

python ×1

surface ×1