来自 pandas 数据框的 3d plot/scatter xyz 坐标

3d plot/scatter xyz coordinates from pandas data frame

我有以下形式的 pdf df:

x y z label
0.0 0.0 0.0 1.0
0.0 0.0 1.0 1.0
0.0 0.0 2.0 1.0
0.0 0.0 3.0 1.0
0.0 0.0 4.0 1.0

标签是聚类的结果,但我似乎无法找到在 df 上进行 3D plt.scatter 的正确方法。有任何想法吗? (数据框比这个大很多)

我尽力了。也许它会帮助你。

import pandas as pd
import numpy as np

您的数据table

df = {'x': [0, 0, 0, 0, 0],
      'y': [0, 0, 0, 0, 0],
      'z': [0, 1, 2, 3, 4],
  'label': ['1', '1', '1', '1', '1'] }

df = pd.DataFrame(data)
df

#Creating a 3d scatter plot 

def create_3d_scatter(df):
    import matplotlib.pyplot as plt
    import numpy as np
    from mpl_toolkits.mplot3d import Axes3D

    fig = plt.figure()
    ax = fig.add_subplot(111, projection='3d')
    ax.scatter(df['x'], df['y'], df['z'], c=df['label'])
    plt.show()


这是根据google colab file with the code