要绘制按一列分组的散点图,可以使用Python的matplotlib库来实现。以下是一个示例代码:
import pandas as pd
import matplotlib.pyplot as plt
# 创建示例数据
data = {'Group': ['A', 'A', 'A', 'B', 'B', 'B', 'C', 'C', 'C'],
'X': [1, 2, 3, 4, 5, 6, 7, 8, 9],
'Y': [10, 15, 8, 7, 12, 6, 9, 14, 11]}
df = pd.DataFrame(data)
# 设置分组列和x、y轴列
group_col = 'Group'
x_col = 'X'
y_col = 'Y'
# 创建一个Figure对象和一个子图
fig, ax = plt.subplots()
# 按分组列进行分组,并在每个分组上绘制散点图
for group, group_data in df.groupby(group_col):
ax.scatter(group_data[x_col], group_data[y_col], label=group)
# 设置图例和坐标轴标签
ax.legend()
ax.set_xlabel(x_col)
ax.set_ylabel(y_col)
# 展示图形
plt.show()
这段代码首先创建了一个示例数据集,其中包含一个分组列'Group'和两个数值列'X'和'Y'。然后,通过groupby()
方法将数据按分组列分组,并使用循环在每个分组上绘制散点图。最后,通过legend()
方法添加图例,并使用set_xlabel()
和set_ylabel()
方法设置坐标轴标签。最后,调用plt.show()
展示图形。