avi*_*iss 3 matplotlib python-3.x
我已经升级到3.0.2 matplotlib和低于我的脚本中使用我的3D绘图现在抛出这个错误:ValueError: RGBA values should be within 0-1 range
。用 2.0.2 版本测试过,它在那里工作......试图谷歌搜索类似的问题,但找不到解决方法,所以向这个聪明的社区寻求帮助......
test = pd.DataFrame({'cluster': ["0", "1", "2"],
'x': [2, 3, 1],
'y': [10, 5, -2],
'z': [-10, -5, 2]})
fig = plt.figure(figsize=(7,7))
ax = Axes3D(fig)
x=test['x']
y=test['y']
z=test['z']
clusters = test['cluster']
ax.scatter(x, y, z, c=clusters, marker='x', cmap='tab20b', depthshade=False)
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
plt.show()
Run Code Online (Sandbox Code Playgroud)
你的集群是字符串。在 matplotlib 2.1 之前,数组被巧合地转换为数字,以便代码可以运行。从 matplotlib 2.1 开始,您需要提供数字才能将它们解释为这样。例如
clusters = test['cluster'].astype(int)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
11516 次 |
最近记录: |