条件等高线图

克里斯托弗·特恩布尔

下面的代码是我现在正在玩的:

x = np.linspace(0,30,1000)
y = np.linspace(0,30,1000)
X,Y = np.meshgrid(x,y)

def f(x,y):
    return x**2 + y**2

Z = f(X,Y)


plt.contour(X, Y, Z, colors='black');

我希望这个图显示一些禁止区域,比如当 f(x,y) < 9; 我希望这个阴影并添加到情节中。我将如何做到这一点?

我试过使用,plt.contourf但我不能让它工作。

斯科特·波士顿

我认为你可以使用这种方式来做到这一点contourf,使用contourf用纯红色填充然后用你的等高线图掩盖你想要显示的区域:

x = np.linspace(0,30,1000)
y = np.linspace(0,30,1000)
X,Y = np.meshgrid(x,y)

def f(x,y):
    return x**2 + y**2

Z = f(X,Y)

d = np.ma.array(Z, mask=Z>9)

plt.contour(X, Y, Z, colors='black')
plt.contourf(X, Y, d, colors='red');

输出:

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章