在数据探索阶段,查看字段的直方图能够直观呈现数据的分布形态,比如是否服从正态分布、是否存在异常值等。display_raw作为常用的数据展示工具,支持通过参数配置来生成字段的直方图,下面详细介绍具体的实现方法。

display_raw的基本介绍
display_raw是很多数据分析库中提供的底层展示函数,相比封装好的高层展示接口,它支持更灵活的参数配置,能够自定义展示的内容、样式和统计维度。默认情况下display_raw会输出字段的原始数值信息,需要手动指定直方图相关的参数才能生成分布图表。
查看字段直方图的实现步骤
1. 准备数据
首先我们需要准备要分析的数据集,这里以pandas的DataFrame为例,构造一个包含数值字段的测试数据:
import pandas as pd
import numpy as np
# 构造测试数据,包含1000条符合正态分布的数值
data = pd.DataFrame({
'score': np.random.normal(loc=75, scale=10, size=1000)
})
print(data.head())2. 配置display_raw参数生成直方图
display_raw本身并不直接生成图表,通常需要结合可视化库的接口,通过设置hist相关的参数来触发直方图绘制。以下是通过matplotlib配合display_raw生成字段直方图的完整代码:
import matplotlib.pyplot as plt
from 对应库名 import display_raw # 替换为实际使用的库名
# 设置matplotlib中文显示
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False
# 调用display_raw,设置hist参数为True,指定要展示的字段
display_raw(
data,
hist=True, # 开启直方图展示
columns=['score'], # 指定要查看直方图的字段
bins=20, # 直方图的柱子数量
title='score字段分布直方图' # 图表标题
)
plt.show()3. 参数说明
上述代码中用到的核心参数含义如下:
- hist:布尔类型,设置为True时开启直方图展示功能
- columns:列表类型,指定需要生成直方图的字段名称,支持同时传入多个字段
- bins:整数类型,指定直方图的分箱数量,数量越多分布展示越精细
- title:字符串类型,设置生成图表的标题
多字段直方图展示
如果需要同时查看多个字段的直方图,可以在columns参数中传入多个字段名称,display_raw会自动生成多个子图分别展示每个字段的分布:
# 构造包含多个数值字段的测试数据
data_multi = pd.DataFrame({
'score': np.random.normal(loc=75, scale=10, size=1000),
'height': np.random.normal(loc=170, scale=8, size=1000),
'weight': np.random.normal(loc=65, scale=12, size=1000)
})
# 同时展示三个字段的直方图
display_raw(
data_multi,
hist=True,
columns=['score', 'height', 'weight'],
bins=15,
title='多字段分布直方图'
)
plt.show()常见问题处理
1. 字段为非数值类型无法生成直方图
如果传入的字段为字符串、日期等非数值类型,会报错提示无法计算分布。此时需要先对字段进行类型转换,比如将字符串类型的数值转换为float类型:
# 处理非数值字段示例
data['str_score'] = data['score'].astype(str)
# 转换为数值类型后再展示
data['str_score'] = pd.to_numeric(data['str_score'])
display_raw(
data,
hist=True,
columns=['str_score'],
bins=20
)
plt.show()2. 直方图分布过于稀疏或密集
可以通过调整bins参数的值来优化展示效果,如果分布过于稀疏可以增大bins值,过于密集可以减小bins值,直到展示的分布形态符合预期。
display_raw直方图字段分析数据可视化修改时间:2026-06-07 00:16:45