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

如何基于多列DataFrame绘制实验室测量数据的散点图?

绘制DataFrame实验室测量数据的散点图方案

你想要把这份每日实验室测量值做成散点图对吧?先再确认下你的数据:

print(df)
day val1 val2 val3
1 1 9.26875 11.34072 11.26673
2 2 48.47862 48.35817 48.68534
3 3 140.17682 141.09102 142.95175
4 4 313.43012 313.69816 312.97293

下面给你两种实用的实现方法,都是Python里常用的工具包,你可以直接套用:

方法一:用Matplotlib手动绘制

Matplotlib是最基础的绘图库,灵活性很高,步骤也很清晰:
首先导入需要的库:

import pandas as pd
import matplotlib.pyplot as plt

然后针对每个测量指标分别绘制散点,用不同颜色区分,还能加图例方便识别:

# 假设你的df已经加载完成(比如从csv读取或者直接定义)
plt.figure(figsize=(8, 6))  # 设置图形大小

# 逐个绘制三个测量值的散点
plt.scatter(df['day'], df['val1'], color='cornflowerblue', label='val1', s=60)
plt.scatter(df['day'], df['val2'], color='tomato', label='val2', s=60)
plt.scatter(df['day'], df['val3'], color='limegreen', label='val3', s=60)

# 添加必要的标注
plt.title('每日实验室测量值散点图', fontsize=14, pad=15)
plt.xlabel('日期(day)', fontsize=12)
plt.ylabel('测量值', fontsize=12)

# 显示图例
plt.legend(fontsize=10)

# 展示图形
plt.show()

方法二:用Seaborn快速绘制(更简洁)

Seaborn适合处理多列数据的可视化,只需要先把数据转换成长格式,就能一键生成分类散点图:
先导入库:

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt

转换数据格式并绘图:

# 把宽格式的df转成长格式,方便Seaborn识别分类
df_long = df.melt(id_vars='day', var_name='测量指标', value_name='数值')

plt.figure(figsize=(8, 6))
# 自动按"测量指标"区分颜色,绘制散点
sns.scatterplot(data=df_long, x='day', y='数值', hue='测量指标', 
                palette=['cornflowerblue', 'tomato', 'limegreen'], s=60)

# 添加标注
plt.title('每日实验室测量值散点图', fontsize=14, pad=15)
plt.xlabel('日期(day)', fontsize=12)
plt.ylabel('测量值', fontsize=12)

plt.show()

这两种方法都能帮你清晰展示每天三个测量值的分布和变化趋势,你可以根据自己的习惯选择。如果需要调整点的大小、颜色或者图形样式,直接修改对应的参数就行~

内容的提问来源于stack exchange,提问作者John C. Dough

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 08:26:31