You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为含4个属性及1个聚类标签的数据集绘制Scatter Plot

4属性+独立聚类标签的散点图绘制方案

你可以通过以下两类方案实现需求:

方案1:多视觉通道映射的2D/3D散点图

无需降维即可保留全部4个属性的原始值,同时单独标注聚类标签,通过不同的视觉属性承载不同维度的信息:

  • 2D散点图映射规则:
    • x轴:第1个属性
    • y轴:第2个属性
    • 点的大小:第3个属性(需提前做0-1归一化后放大到10-100的像素区间,避免点尺寸差异过大)
    • 点的透明度/饱和度:第4个属性
    • 点的颜色/形状:聚类标签
  • 3D散点图映射规则:
    • x/y/z轴:前3个属性
    • 点的大小/透明度:第4个属性
    • 点的颜色:聚类标签

2D散点图实现代码示例:

import matplotlib.pyplot as plt
import pandas as pd
from sklearn.preprocessing import MinMaxScaler

# 读取数据集
df = pd.read_csv("你的数据集路径.csv")
# 归一化处理用于映射尺寸、透明度的属性,避免视觉效果异常
scaler = MinMaxScaler(feature_range=(10, 100))
df['point_size'] = scaler.fit_transform(df[['属性3的列名']])
df['point_alpha'] = scaler.fit_transform(df[['属性4的列名']]) / 100 # 透明度取值范围为0-1

plt.figure(figsize=(10, 6))
# 按聚类标签分组绘图,不同聚类用不同颜色区分
for cluster_label in df['聚类标签列名'].unique():
    sub_df = df[df['聚类标签列名'] == cluster_label]
    plt.scatter(sub_df['属性1的列名'], sub_df['属性2的列名'],
                s=sub_df['point_size'],
                alpha=sub_df['point_alpha'],
                label=f"聚类{cluster_label}")
plt.xlabel("属性1")
plt.ylabel("属性2")
plt.legend()
plt.show()

方案2:高维属性降维后可视化

如果不需要保留每个属性的原始轴含义,仅需要展示样本间的分布关系和聚类效果,可先将4个属性降为2/3维后绘图:

  • 常用降维方法:PCA(线性降维,保留数据全局结构)、t-SNE(非线性降维,优先保留局部聚类结构)
  • 映射规则:降维得到的2/3个维度作为散点图坐标轴,点的颜色对应聚类标签,也可额外通过点大小映射某一个原始属性的数值

t-SNE降维可视化实现代码示例:

import matplotlib.pyplot as plt
import pandas as pd
from sklearn.manifold import TSNE

# 提取4个属性列
feature_cols = ["属性1", "属性2", "属性3", "属性4"]
feature_data = df[feature_cols].values
# 降为2维
tsne = TSNE(n_components=2, random_state=42)
reduce_data = tsne.fit_transform(feature_data)

plt.figure(figsize=(10, 6))
scatter = plt.scatter(reduce_data[:, 0], reduce_data[:, 1], c=df['聚类标签列名'], cmap="tab10")
plt.legend(handles=scatter.legend_elements()[0],
           labels=[f"聚类{i}" for i in df['聚类标签列名'].unique()])
plt.xlabel("t-SNE维度1")
plt.ylabel("t-SNE维度2")
plt.show()

内容的提问来源于stack exchange,提问作者Hassan Ashas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 02:36:03