gpt4 book ai didi

python - 在轮廓中绘制 NaNs 区域的边界

转载 作者:太空宇宙 更新时间:2023-11-04 00:08:01 24 4
gpt4 key购买 nike

我正在尝试使用 NaN 绘制一些数据的等高线图(无解)。我想用黑线表示 NaN 的边界。到目前为止,我只找到了如何孵化整个 NaN 区域 ( hatch a NaN region in a contourplot in matplotlib ),但我只想要轮廓。

fig, ax = plt.subplots()

d = np.random.rand(10, 10)
d[2, 2], d[3, 5] = np.nan, np.nan

plt.contour(d)
plt.show()

我得到:

enter image description here

我想要:

enter image description here

最佳答案

您可以绘制 mask 区域的另一个轮廓。为此,可以使用 numpy.ma 数组屏蔽数据。然后使用它的掩码在接近(但不完全)零的水平上绘制另一个轮廓。

import numpy as np
import matplotlib.pyplot as plt

fig, ax = plt.subplots()

d = np.random.rand(10, 10)

mask = np.zeros(d.shape, dtype=bool)
mask[2, 2], mask[3, 5] = 1, 1

masked_d = np.ma.array(d, mask=mask)

plt.contour(masked_d)

plt.contour(mask, [0.01], colors="k", linewidths=3)

plt.show()

enter image description here

关于python - 在轮廓中绘制 NaNs 区域的边界,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53377922/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com