我正在尝试创建3d表面图,x轴是日期,y轴是时间,z轴是在该日期和时间测量的值。我不确定如何使用matplotlib来解决这个问题。
X,Y,Z均为长度为324624的一维列表
下面是表中数据的样子
|----------------|----------------|----------------|
| X | y | z |
|----------------|----------------|----------------|
| 1/01/2019 | 00:00 | 13 |
|----------------|----------------|----------------|
| 1/01/2019 | 00:01 | 21 |
|----------------|----------------|----------------|
| 1/01/2019 | 00:02 | 5 |
|----------------|----------------|----------------|
| ..... | ..... | ..... |
|----------------|----------------|----------------|
| 1/01/2019 | 23:59 | 34 |
|----------------|----------------|----------------|
| 1/02/2019 | 00:00 | 5 |
|----------------|----------------|----------------|
| 1/02/2019 | 00:01 | 9 |
|----------------|----------------|----------------|
| ..... | ..... | ..... |
|----------------|----------------|----------------|
这是我到目前为止的代码
def plotHelper(zlabel,x,y,z):
x = np.arange(len(x))
y = np.arange(len(y))
z = np.reshape(z,(len(x),len(y)))
x,y = np.meshgrid(x,y)
ax = plt.axes(projection='3d')
ax.plot_surface(x,y,z)
ax.set_xlabel('Date')
ax.set_ylabel('Time')
ax.set_zlabel(zlabel)
plt.show