Python 中的轮廓

Contour in Python

中如何计算Z
from matplotlib.pyplot import contour

contour([X, Y,] Z, [levels], **kwargs)

画轮廓?

我知道Z的意思是:绘制等高线的高度值。

但它是通过计算标准差或类似的东西得出的吗?

我得到的每个点之间的平均值?

Z 表示依赖于 XY 轴的数量。如果XY表示一个平面,那么Z可以认为是一个曲面,其点高取决于给定的XY坐标观点。轮廓是那个表面的"top view",一个投影。一个例子是当经度(X)和纬度(Y)变化时报告山脉高度(Z)的等高线。
正如您所写,matplotlibcontour 函数绘制了 Z 变量中表示的值(二维 numpy.ndarray,如 XY) 原样,无需进一步处理。 ZXY 之间的关系是在 plot 函数之外定义的。
我在下面报告一个例子,也许它可能有用:

# IMPORT
import numpy as np
import matplotlib.pyplot as pl

# INPUT
N = 100
x_min = 0
x_max = 10
y_min = 0
y_max = 10
z_min = 0
z_max = 50
z_step = 1
red = '#de7677'

# DEFINE MESH GRID
x = np.linspace(x_min, x_max, N)
y = np.linspace(y_min, y_max, N)
XX, YY = np.meshgrid(x, y)

# CALCULATE ZZ AS A FUNCTION OF XX AND YY, FOR ESAMPLE, THEIR SUM
ZZ = YY + XX

# PLOT THE CONTOUR
fig, ax = pl.subplots(figsize = (10, 10))

cont = ax.contour(XX,
                  YY,
                  ZZ,
                  levels = np.arange(z_min, z_max + z_step, z_step),
                  colors = red)

# SET THE CONTOUR LABELS
pl.clabel(cont, fmt = '%d')

# SET THE X AND Y LABEL
ax.set_xlabel('X')
ax.set_ylabel('Y')

pl.show()