【发布时间】:2019-03-27 10:56:49
【问题描述】:
我想用 matplotlib 在 Python 中做一个 3D 散点图,例如点 > 5 显示为红色,其余为蓝色。
问题是我仍然使用标记/颜色绘制所有值,我也知道为什么会这样,但我对 Python 的思考还不够深入,无法解决这个问题。
X = [3, 5, 6, 7,]
Y = [2, 4, 5, 9,]
Z = [1, 2, 6, 7,]
#ZP is for differentiate between ploted values and "check if" values
ZP = Z
for ZP in ZP:
if ZP > 5:
ax.scatter(X, Y, Z, c='r', marker='o')
else:
ax.scatter(X, Y, Z, c='b', marker='x')
plt.show()
也许解决方案也是我还没有学到的东西,但在我看来,让它发挥作用应该不难。
【问题讨论】:
-
您的
if条件没有完成任何事情 - 在这两种情况下,您仍在绘制整个系列。而是为每个条件创建单独的X和Y。
标签: python matplotlib scatter-plot