我使用具有3列(x,y,z)的数据框创建了散点图。现在,我将散点图类型更改为Axes3D.scatter(),使其为3D并可以旋转。 Axes3D.scatter()带有两个位置参数,我不知道如何将3个数据点转换为2。
Axes3D.scatter(xs, ys, zs=0, zdir='z', s=20, c=None, depthshade=True, *args, **kwargs)
创建散点图。
参数->描述 xs,ys->数据点的位置。 zs->或者是与xs和ys具有相同长度的数组,或者是一个将所有点放置在同一平面上的单个值。默认值为0。
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
Axes3D.scatter(finalDf.loc[indicesToKeep, 'principal component 1']
, finalDf.loc[indicesToKeep, 'principal component 2']
, finalDf.loc[indicesToKeep, 'principal component 3']
, c = colors
)
我得到的错误是:
AttributeError: 'Series' object has no attribute 'has_data'
我认为这是因为我为xs,yz提供的数据只是一个数据点。
我想看的是3D散点图。