【发布时间】:2022-07-08 17:16:10
【问题描述】:
我有一个绘制 3D 散点图的函数,它工作正常,但我不知道如何根据条件为特定数据点赋予颜色,例如:
在下面的代码中,我正在绘制 3 个特征; nbActionsD30、avgActionsMonth 和 actionSHR。
我想为 actionsSHR 值 >= 50 的数据点赋予特定颜色
函数的参数是f1、f2、f3的特征名称。数据是数据框 包含特征。
这是我的函数代码:
def plot3D(f1, f2, f3, data):
%matplotlib widget
from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
xs = data[f1]
ys = data[f2]
zs = data[f3]
fig = plt.figure()
ax = Axes3D(fig)
plot = ax.scatter(xs, ys, zs, s=50, color = 'blue', edgecolors = "white")
ax.set_xlabel(f1)
ax.set_ylabel(f2)
ax.set_zlabel(f3)
plt.show()
plot3D("avgActionsMonth", "nbActionsD30", "actionSHR", data)
【问题讨论】:
-
c=list_of_values_to_color_by(见here) -
@tomjn c 参数只定义了我想使用的颜色(颜色列表)来标记点,我的问题是我想用不同的颜色标记 actionsSHR >= 50 的特定数据点
标签: python matplotlib data-visualization scatter3d