AutoViz
AutoViz 是一款专为数据探索设计的 Python 开源库,旨在让用户仅用一行代码即可自动完成任意规模数据集的可视化工作。它有效解决了传统数据分析中绘图代码繁琐、图表类型选择困难以及探索性分析(EDA)效率低下的痛点,帮助用户快速洞察数据中的模式、趋势与关联。
无论是刚入门的数据分析新手,还是希望提升工作效率的资深专家或研究人员,都能从 AutoViz 中获益。对于初学者,它屏蔽了底层绘图库的复杂细节,降低了技术门槛;对于专业人士,它则提供了一个高效的辅助工具,帮助发现可能被忽略的数据特征。
除了强大的自动绘图能力,AutoViz 还具备独特的数据质量评估功能。其内置的 FixDQ() 函数能快速诊断数据集质量问题并提供修复建议,实现了从“看数据”到“懂数据”再到“洗数据”的流畅闭环。作为一个由社区驱动的开放项目,AutoViz 持续更新以兼容最新的 Python 环境,致力于让数据可视化变得简单、直观且触手可及。
使用场景
某电商数据分析师需要在 30 分钟内向管理层汇报上季度千万级销售数据的异常趋势,但面对包含上百个字段的杂乱 CSV 文件,时间紧迫且缺乏清晰的探索方向。
没有 AutoViz 时
- 需手动编写大量 Matplotlib 或 Seaborn 代码来逐一绘制直方图、散点图和箱线图,耗时极长且容易出错。
- 面对高维数据,难以快速判断哪些变量之间存在强相关性,往往凭经验盲目绘图,遗漏关键洞察。
- 数据质量参差不齐,需要额外编写脚本检测缺失值和异常值,导致分析流程被频繁打断。
- 生成的图表风格不统一,调整配色和布局花费了大量美化时间,而非专注于业务逻辑分析。
- 在会议前夕因无法快速产出可视化报告,导致决策依据不足,只能凭直觉汇报。
使用 AutoViz 后
- 仅需一行代码即可自动遍历所有字段,瞬间生成涵盖分布、关系和趋势的全套交互式图表。
- AutoViz 智能识别数值型与分类型特征,自动筛选并展示最具统计显著性的变量组合,直接锁定核心驱动因素。
- 内置的 FixDQ() 功能同步评估数据质量,快速定位并提示缺失或异常数据,让清洗与探索同步完成。
- 输出的图表默认具备专业级的配色与布局,无需手动调整即可直接嵌入 PPT 进行高质量汇报。
- 将原本数小时的探索工作压缩至几分钟,分析师能从容地基于直观图表深入解读业务问题,赢得管理层信任。
AutoViz 通过将复杂的探索性数据分析自动化,让数据从业者从繁琐的绘图编码中解放出来,专注于挖掘数据背后的商业价值。
运行环境要求
- Linux
- macOS
- Windows
未说明
未说明

快速开始
AutoViz:一行代码搞定自动数据可视化库

只需一行代码,即可使用 AutoViz 可视化任意规模的数据集!此外,您现在还可以通过 FixDQ() 函数快速评估数据集的质量,并修复数据质量(DQ)问题。
借助 AutoViz,您可以轻松快捷地为数据生成富有洞察力的可视化图表。无论您是数据分析新手还是专家,AutoViz 都能帮助您探索数据并挖掘有价值的见解。立即试用,亲身体验自动化可视化的强大功能吧!
目录
- 最新动态
- 重要公告
- 引用
- AutoViz 的诞生动机
- 如何使用 AutoViz
- AutoViz 的 API 说明
- AutoViz 使用示例
- 维护者
- 贡献指南
- 许可证
- 使用 AutoViz 的技巧
- 免责声明
最新动态
关于 autoviz 库的最新更新,请参阅 更新页面。
重要公告
自 0.1.901 版本起,我们进行了重要更新:
意见反馈
您的反馈对我们至关重要!如果您遇到任何问题或有改进建议,请通过 GitHub Issues 告知我们。
感谢您的持续支持,祝您可视化愉快!
引用
如果您在研究项目或论文中使用了 AutoViz,请采用以下格式进行引用:
“Seshadri, Ram (2020). GitHub - AutoViML/AutoViz: 仅需一行代码即可自动可视化任意规模的数据集。源代码:https://github.com/AutoViML/AutoViz”
AutoViz 当前的引用次数动机
创建 AutoViz 的初衷,是为了提供一种更高效、更易用且自动化的探索性数据分析(EDA)方法,通过快速简便的数据可视化和数据质量分析来实现。该库旨在帮助用户以最少的努力创建富有洞察力的可视化图表,从而理解数据中的模式、趋势和关系。对于数据分析初学者而言,AutoViz 尤其有用,因为它屏蔽了各种绘图库和技术的复杂性。而对于专家来说,它则提供了另一种工具,可以帮助他们发现可能遗漏的数据洞察。
AutoViz 是一款功能强大的工具,能够以最小的努力生成富有洞察性的可视化图表。与其他自动化 EDA 工具相比,它的主要优势如下:
- 易于使用:AutoViz 设计得非常友好,即使是数据分析新手也能轻松上手,无需深入了解复杂的绘图库。
- 速度:AutoViz 经过优化,速度极快,只需一行代码即可生成多张富有洞察力的图表。
- 可扩展性:AutoViz 可以处理任意规模的数据集,并能高效应对大型数据集。
- 自动化:AutoViz 完全自动执行可视化流程,只需一行代码即可生成多张图表。
- 可定制性:AutoViz 提供多种自定义选项,例如更改图表类型、配色方案等。
- 数据质量:AutoViz 现在默认提供数据质量评估功能,并可通过 FixDQ() 函数以一行代码修复数据质量问题。
先决条件
请创建一个新的环境,并安装必要的依赖项以克隆 AutoViz:
从 PyPI 安装:
cd <AutoViz_目标目录>
git clone git@github.com:AutoViML/AutoViz.git
# 或者下载并解压 https://github.com/AutoViML/AutoViz/archive/master.zip
conda create -n <你的环境名称> python=3.7 anaconda
conda activate <你的环境名称> # 在 Windows 上:`source activate <你的环境名称>`
cd AutoViz
对于 Python 3.10 以下的版本,请按以下步骤安装依赖项:
pip install -r requirements.txt
对于 Python 3.10,请使用:
pip install -r requirements-py310.txt
对于 Python 3.11 及以上版本,建议使用:
pip install -r requirements-py311.txt
这些依赖文件确保 AutoViz 能够与您的 Python 环境无缝兼容,安装诸如 HoloViews、Bokeh 和 hvPlot 等库的兼容版本。请选择与您 Python 版本相对应的依赖文件,以便获得流畅的 AutoViz 使用体验。
使用方法
在本篇 Medium 文章中了解如何使用 AutoViz。
在 AutoViz 目录中,打开一个 Jupyter Notebook,或者打开命令面板(终端),并使用以下代码实例化 AutoViz_Class。您可以逐行运行这段代码:
from autoviz import AutoViz_Class
AV = AutoViz_Class()
dft = AV.AutoViz(filename)
AutoViz 可以接受任何输入,既可以是文件名(CSV、TXT 或 JSON 格式),也可以是 Pandas 数据框。如果您有一个大型数据集,可以通过设置 max_rows_analyzed 和 max_cols_analyzed 参数来加速可视化过程,让 AutoViz 对您的数据集进行采样。
AutoViz 还可以通过 chart_format 设置以多种格式创建图表:
- 如果
chart_format='png'、'svg'或'jpg':Matplotlib 图表将以内联方式绘制。- 可以保存到本地(通过设置
verbose=2)或在 Jupyter Notebook 中显示(verbose=1)。 - 这是 AutoViz 的默认行为。
- 可以保存到本地(通过设置
- 如果
chart_format='bokeh':交互式的 Bokeh 图表将在 Jupyter Notebook 中绘制。 - 如果
chart_format='server',每种类型的图表都会在您的浏览器中弹出仪表板。 - 如果
chart_format='html',将创建交互式的 Bokeh 图表,并静默地将其保存为 HTML 文件,存储在工作目录下的AutoViz_Plots目录中,或者您在输入时通过save_plot_dir设置指定的其他目录中。
API
AV.AutoViz() 方法的参数:
filename:如果没有关联的文件名且您想使用数据框,则使用空字符串("")。在这种情况下,请使用dfte参数指定数据框。否则,请提供文件名并将dfte参数留空。两者只能使用其一。sep:文件分隔符(逗号、分号、制表符或其他列分隔值),如果您使用上述文件名。depVar:数据集中目标变量;如果未适用,则将其设置为空字符串。dfte:用于绘制图表的 Pandas 数据框名称;如果使用文件名,则将其留空。header:设置文件中标题行的行号(0 表示第一行)。否则保持为 0。verbose:0 表示仅显示最少的信息和图表,1 表示显示更多信息和图表,2 表示将图表保存到本地而不显示。lowess:在小型数据集中,对每个连续变量与目标变量的组合使用回归线;避免在大型数据集(超过 10 万行)中使用。chart_format:'svg'、'png'、'jpg'、'bokeh'、'server' 或 'html',用于以不同格式显示或保存图表,具体取决于 verbose 选项。max_rows_analyzed:在处理非常大型的数据集(数百万行)时,限制用于可视化分析的最大行数。AutoViz 将使用具有统计代表性的样本。默认值为 150,000 行。max_cols_analyzed:限制要分析的连续变量数量。默认值为 30 列。save_plot_dir:保存图表的目录。默认值为 None,表示将图表保存在当前目录下的名为 AutoViz_Plots 的子文件夹中。如果该目录不存在,将会自动创建。
示例
以下是一些示例,可帮助您开始使用 AutoViz。如果您需要包含代码示例的完整 Jupyter Notebook,可以在 examples 文件夹中找到它们。
示例 1:可视化带有目标变量的 CSV 文件
from autoviz import AutoViz_Class
AV = AutoViz_Class()
filename = "your_file.csv"
target_variable = "your_target_variable"
dft = AV.AutoViz(
filename,
sep=",",
depVar=target_variable,
dfte=None,
header=0,
verbose=1,
lowess=False,
chart_format="svg",
max_rows_analyzed=150000,
max_cols_analyzed=30,
save_plot_dir=None
)

示例 2:可视化不带目标变量的 Pandas 数据框:
import pandas as pd
from autoviz import AutoViz_Class
AV = AutoViz_Class()
data = {'col1': [1, 2, 3, 4, 5], 'col2': [5, 4, 3, 2, 1]}
df = pd.DataFrame(data)
dft = AV.AutoViz(
"",
sep=",",
depVar="",
dfte=df,
header=0,
verbose=1,
lowess=False,
chart_format="server",
max_rows_analyzed=150000,
max_cols_analyzed=30,
save_plot_dir=None
)

示例 3:生成交互式的 Bokeh 图表,并将其保存为 HTML 文件到自定义目录
from autoviz import AutoViz_Class
AV = AutoViz_Class()
filename = "your_file.csv"
target_variable = "your_target_variable"
custom_plot_dir = "your_custom_plot_directory"
dft = AV.AutoViz(
filename,
sep=",",
depVar=target_variable,
dfte=None,
header=0,
verbose=2,
lowess=False,
chart_format="bokeh",
max_rows_analyzed=150000,
max_cols_analyzed=30,
save_plot_dir=custom_plot_dir
)

这些示例应该能让您了解如何在不同场景和设置下使用 AutoViz。通过调整选项和设置,您可以生成最适合您需求的可视化效果,无论是在处理大型数据集、创建交互式图表,还是仅仅探索变量之间的关系。
维护者
AutoViz 由一支敬业的开发团队积极维护和改进。如果您有任何问题、建议或遇到任何问题,请随时联系维护者:
贡献
我们欢迎社区的贡献!如果您有兴趣为 AutoViz 做出贡献,请按照以下步骤操作:
- 在 GitHub 上 fork 该仓库。
- 克隆您的 fork,并为您的功能或 bug 修复创建一个新的分支。
- 将您的更改提交到新分支,确保遵循编码标准并编写适当的测试。
- 将您的更改推送到您在 GitHub 上的 fork。
- 向主仓库提交 pull 请求,详细说明您的更改并引用任何相关问题。
请参阅贡献文档!
许可证
AutoViz 根据 Apache License, Version 2.0 发布。通过使用 AutoViz,您即表示同意许可证中规定的条款和条件。
小贴士
以下是一些额外的提示和提醒,帮助您更好地利用 AutoViz 库:
- 请确保定期升级 AutoViz,以便享受最新的功能、错误修复和性能改进。您可以使用
pip install --upgrade autoviz命令进行更新。 - AutoViz 具有高度可定制性,请大胆探索并尝试不同的参数设置,例如
chart_format、verbose和max_rows_analyzed等,从而创建更符合您特定需求和偏好的可视化图表。 - 如果您使用了
verbose=2选项,请记得定期清理AutoViz_Plots目录(或您自定义的其他目录),因为随着时间推移,保存的图表可能会越来越多。 - 如需进一步指导或灵感,可以查看关于 AutoViz 的 Medium 文章,以及其他在线资源和教程。
- AutoViz 可以对任意大小的数据文件进行可视化,它会基于统计学上有效的样本进行展示。
- 文件默认使用逗号作为分隔符,但您可以根据需要更改。
- AutoViz 默认将文件的第一行视为表头,不过这一设置也可以调整。
- 通过充分利用 AutoViz 强大而灵活的功能,您可以简化数据可视化流程,并更高效地获得有价值的洞察。祝您可视化工作愉快!
免责声明
本项目并非 Google 官方项目。它不受 Google 支持,Google 特此明确声明不对该项目的质量、适销性或特定用途的适用性作出任何担保。
常见问题
相似工具推荐
openclaw
OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
markitdown
MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具,专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片(含 OCR)、音频(含语音转录)、HTML 乃至 YouTube 链接等多种格式的解析,能够精准提取文档中的标题、列表、表格和链接等关键结构信息。 在人工智能应用日益普及的今天,大语言模型(LLM)虽擅长处理文本,却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点,它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式,成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外,它还提供了 MCP(模型上下文协议)服务器,可无缝集成到 Claude Desktop 等 LLM 应用中。 这款工具特别适合开发者、数据科学家及 AI 研究人员使用,尤其是那些需要构建文档检索增强生成(RAG)系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性,但其核心优势在于为机器
LLMs-from-scratch
LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备


