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

基于pandas DataFrame按flag列设置散点图点颜色的实现方法

按flag列设置散点图颜色的简便方法

完全不用逐行检查哦!这里有两种超直观的简便方案,看你习惯用哪种工具:

方案1:Matplotlib + Pandas原生操作

直接把flag列映射成对应的颜色,然后传给散点图的c参数就行,全程不用循环遍历:

import pandas as pd
import matplotlib.pyplot as plt

# 构造你的DataFrame
df = pd.DataFrame({
    'col1': [1, 2, 3],
    'value': [0, 0.03915, 0.13],
    'flag': [0, 0, 1]
})

# 把flag值映射为对应颜色
color_map = {0: 'blue', 1: 'red'}
point_colors = df['flag'].map(color_map)

# 绘制散点图
plt.scatter(df['col1'], df['value'], c=point_colors)
plt.xlabel('col1')
plt.ylabel('value')
plt.show()

方案2:用Seaborn(更简洁省心)

Seaborn的散点图直接支持按列分组设置颜色,一行核心代码就能搞定,还能自动生成对应图例:

import pandas as pd
import seaborn as sns

df = pd.DataFrame({
    'col1': [1, 2, 3],
    'value': [0, 0.03915, 0.13],
    'flag': [0, 0, 1]
})

# 用hue参数指定按flag列区分颜色,palette自定义颜色映射
sns.scatterplot(data=df, x='col1', y='value', hue='flag', palette={0:'blue', 1:'red'})
plt.show()

这两种方法都利用了数据映射的特性,既简洁又高效,完全不用手动逐行判断flag值~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 08:13:00