绘制 3d 图形时出现问题

Issue in plotting a 3d graph

我正在努力为四个参数设计 3d 图,我有三个参数 x、y 和 z。参数 x、y 和 z 在 0 和 1 范围内,而 k 参数是分类值 0 或 1。我的数据格式如下 data-csv

代码

data = np.genfromtxt("data.csv", delimiter=",", names=["x", "y","z","k"])
x, y, z = zip(*data)
fig = plt.figure()
ax = plt.axes(projection='3d')
#ax = fig.add_subplot(111, projection='3d')
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Optimal-Selection')
ax.set_ylim(0,1)
ax.set_zlim(0,1)
surf = ax.plot_trisurf(np.array(x), np.array(y), np.array(z),cmap='viridis')
fig.colorbar(surf,shrink=0.5, aspect=9)
plt.show()

运行时错误:

RuntimeError: Error in qhull Delaunay triangulation calculation: input inconsistency (exitcode=1); use python verbose option (-v) to see original qhull error.

这是否接近您要找的东西?

import numpy as np
import matplotlib.pyplot as plt

data = np.genfromtxt("data.csv", delimiter=",", skip_header=1)
list (data)
x = data [:,0]
y = data [:,1]
z = data [:,2]

fig = plt.figure()
ax = plt.axes(projection='3d')
#ax = fig.add_subplot(111, projection='3d')
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Optimal-Selection')
ax.set_ylim(0,1)
ax.set_zlim(0,1)
surf = ax.plot_trisurf(x,y,z,cmap='viridis')
fig.colorbar(surf,shrink=0.5, aspect=9)
plt.show()