Эти meshgrid
немного сбивают с толку для меня.Я пытаюсь сделать график рассеяния с координатами x
и y
с контурным графиком, наложенным на разброс с непрерывным разбросом для координат z
.Похож на карту высот.
Если я использую meshgrid
с координатами x, y и z, тогда я получу трехмерный массив для каждого, который все еще является неправильным вводом.
df_xyz = pd.read_table("https://pastebin.com/raw/f87krHFK", sep="\t", index_col=0)
x = df_xyz.iloc[:,0].values
y = df_xyz.iloc[:,1].values
z = df_xyz.iloc[:,2].values
XX, YY = np.meshgrid(x,y)
with plt.style.context("seaborn-white"):
fig, ax = plt.subplots(figsize=(13,8))
ax.scatter(x,y, color="black", linewidth=1, edgecolor="ivory", s=50)
ax.contourf(XX,YY,z)
# TypeError: Input z must be a 2D array.
XX, YY, ZZ = np.meshgrid(x,y,z)
with plt.style.context("seaborn-white"):
fig, ax = plt.subplots(figsize=(13,8))
ax.scatter(x,y, color="black", linewidth=1, edgecolor="ivory", s=50)
ax.contourf(XX,YY,ZZ)
# TypeError: Input z must be a 2D array.
Вот мой текущий вывод:
Я пытаюсь сделать что-то похожее на это: