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

ggplot2:基于随机生成变量名设置散点图坐标轴标签

解决随机选列散点图的坐标轴标签问题

嘿,这个问题我太熟悉了!之前做探索性数据分析的时候经常遇到——随机挑变量画图,转头就忘了用的是哪两列。其实核心思路很简单:把随机选中的列名先存起来,绘图的时候直接把这些名字指定给X轴和Y轴就行。我给你用两种常用的数据分析工具分别演示:

Python(Pandas + Matplotlib/Seaborn)

步骤1:随机选列并保存列名

先拿示例数据框举例,随机挑选两列后把列名存到变量里:

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np

# 创建示例数据框
df = pd.DataFrame(
    np.random.rand(50, 4),
    columns=['身高', '体重', '年龄', '月收入']
)

# 随机选择不重复的两列,保存列名
selected_cols = np.random.choice(df.columns, size=2, replace=False)
x_col, y_col = selected_cols[0], selected_cols[1]

步骤2:绘图时指定坐标轴标签

用Matplotlib绘图的话,直接通过xlabel()和ylabel()把存好的列名传进去:

plt.scatter(df[x_col], df[y_col])
plt.xlabel(x_col, fontsize=12)  # X轴显示选中的列名
plt.ylabel(y_col, fontsize=12)  # Y轴同理
plt.title(f'{x_col} 与 {y_col} 的散点图', fontsize=14)
plt.grid(alpha=0.3)
plt.show()

如果用Seaborn,代码会更简洁,同样可以指定标签:

import seaborn as sns

sns.scatterplot(data=df, x=x_col, y=y_col)
plt.xlabel(x_col)
plt.ylabel(y_col)
plt.show()

R语言

如果用R做分析,逻辑是一样的:先存列名,再绘图时指定标签:

# 创建示例数据框
df <- data.frame(
  身高 = rnorm(50),
  体重 = rnorm(50),
  年龄 = rnorm(50),
  月收入 = rnorm(50)
)

# 随机选两列并保存列名
selected_cols <- sample(names(df), 2, replace = FALSE)
x_col <- selected_cols[1]
y_col <- selected_cols[2]

# 绘图并设置坐标轴标签
plot(
  df[[x_col]], df[[y_col]],
  xlab = x_col, ylab = y_col,
  main = paste(x_col, "vs", y_col),
  pch = 16, col = "#2E86AB"
)

不管用哪种工具,核心都是提前捕获随机选中的列名,这样绘图时就能精准把列标题放到坐标轴上,再也不用猜变量啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 04:31:58