1

我正在尝试绘制每个条形图,每个条形图都以 x,y 坐标为底,高度等于 az 值。下面的代码似乎没有正确捕获我的 x 轴,我不知道为什么。

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

x = [0.0245, 0.015, 0.0245, 0.0285, 0.0245, 0.0245]
y = [0.0024, 0.0075, 0.0095, 0.01, 0.008, 0.0018]
z = [11.71, 2.09, 2.49, 2.05, 2.72, 22.55]

ax.bar(x, y, z, zdir='z', color='g', alpha=.8)

plt.show()
4

1 回答 1

0

检查参数,您说您希望高度等于 z 值,但是您传入 y 作为条形的高度。这更好吗,使用bar3d

在此处输入图像描述

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')

x = [0.0245, 0.015, 0.0245, 0.0285, 0.0245, 0.0245]
y = [0.0024, 0.0075, 0.0095, 0.01, 0.008, 0.0018]
z = [11.71, 2.09, 2.49, 2.05, 2.72, 22.55]

ax.bar3d(x, y, [0]*6, 0.001, 0.001, z)

ax.set_xlabel('x')
ax.set_ylabel('y')
ax.set_zlabel('z')

plt.show()
于 2013-03-17T07:49:51.787 回答