📜  在 Plotly-Python 中使用 graph_objects 类的 3D 散点图(1)

📅  最后修改于: 2023-12-03 15:07:45.893000             🧑  作者: Mango

在 Plotly-Python 中使用 graph_objects 类的 3D 散点图

Plotly-Python 是一个基于 Plotly.js 的 Python 库,可以创建交互式数据可视化。graph_objects 类是 Plotly 中用于绘制 3D 散点图的类。本文将介绍如何使用 graph_objects 类在 Plotly-Python 中绘制 3D 散点图。

准备数据

在开始之前,需要准备数据。本文以 iris 数据集为例。iris 数据集是一个经典的数据集,包含了 3 种不同品种的鸢尾花的萼片长度、萼片宽度、花瓣长度和花瓣宽度。可以使用 scikit-learn 库中的 load_iris 函数来加载 iris 数据集:

from sklearn.datasets import load_iris

data = load_iris()
X = data['data']
y = data['target']
绘制图形

有了数据之后,就可以使用 graph_objects 类来绘制 3D 散点图了。下面是绘制 3D 散点图的完整代码:

import plotly.graph_objects as go
from sklearn.datasets import load_iris

data = load_iris()
X = data['data']
y = data['target']

fig = go.Figure(data=[go.Scatter3d(
    x=X[:, 0],
    y=X[:, 1],
    z=X[:, 2],
    mode='markers',
    marker=dict(
        size=5,
        color=y,
        colorscale='Viridis',  # 设置颜色渐变
        opacity=0.8
    )
)])

fig.update_layout(scene=dict(
    xaxis=dict(title='Sepal Length'),
    yaxis=dict(title='Sepal Width'),
    zaxis=dict(title='Petal Length')
))

fig.show()

代码中的 Scatter3d 类表示绘制 3D 散点图,x、y、z 分别是数据集中各项数据的值,mode 表示绘制模式,这里使用 markers 表示使用散点绘制。marker 参数设置散点的大小、颜色等属性,其中颜色使用 colorscale 参数指定渐变色。scene 参数可以设置坐标轴的标签。

运行代码,就可以在页面上看到绘制的 3D 散点图了。

总结

本文介绍了在 Plotly-Python 中使用 graph_objects 类绘制 3D 散点图的方法,通过上述方法可以轻松地绘制出高质量的数据可视化图形来。