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

如何实现ydata-profiling对比报告的直方图并排显示而非单页?

解决ydata-profiling对比报告直方图并排显示问题

问题描述

我想生成一份对比报告,让直方图像ydata.ai教程里的Ferritin变量示例那样并排展示,但实际复现时直方图只以单页形式显示:

当前输出:单页直方图

Current Output: Hist Single-Page

预期输出:并排直方图

Expected Output: Hist Side-by-Side

我试过不同版本的ydata-profiling,也查过官方GitHub仓库,但问题仍未解决。

代码示例

import ydata_profiling
print(ydata_profiling.__version__)  # 输出 'v4.1.0'

import pandas as pd
import numpy as np
from ydata_profiling import ProfileReport

# 生成原始数据
df = pd.DataFrame(dict(
  Ferritin=np.random.normal(1,10,size=200)
))

# 生成变换后数据
df_new = pd.DataFrame(dict(
  Ferritin=np.random.normal(1,10,size=200)
))

# 创建原始报告
original_report = ProfileReport(df, title="Original Data")
original_report.to_file("original_report.html")

# 创建变换后报告并生成对比报告
transformed_report = ProfileReport(df_new, title="Transformed Data")
comparison_report = original_report.compare(transformed_report)
# comparison_report.to_file("original_vs_transformed.html")
comparison_report

解决方法

针对ydata-profiling v4.1.0版本,要实现直方图并排显示,需在创建ProfileReport时指定对比模式的配置参数,具体操作如下:

1. 自定义配置启用并排直方图

通过Settings类定义配置,开启对比视图的并排显示逻辑:

from ydata_profiling.config import Settings

# 自定义配置:设置对比视图的直方图为并排模式
config = Settings(
    plot=dict(
        histogram=dict(
            compare=dict(
                type="side-by-side"  # 指定并排显示类型
            )
        )
    ),
    comparison=dict(
        layout="side-by-side"  # 确保对比视图整体布局为并排
    )
)

2. 应用配置生成对比报告

修改原代码,创建报告时传入上述配置:

# 用自定义配置创建两份报告
original_report = ProfileReport(df, title="Original Data", config=config)
transformed_report = ProfileReport(df_new, title="Transformed Data", config=config)

# 生成并保存对比报告
comparison_report = original_report.compare(transformed_report)
comparison_report.to_file("original_vs_transformed.html")
comparison_report

3. 备选方案

如果上述配置不生效,可尝试降级到ydata-profiling v4.0.0版本,部分用户反馈该版本的对比视图默认启用并排直方图。


内容的提问来源于stack exchange,提问作者dominik-bursy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 03:57:44