网易首页 > 网易号 > 正文 申请入驻

Python制表杀疯了!Great Tables 5分钟搞定Excel级美观表格

0
分享至



做数据分析,一半时间都耗在“制表”上?

做Python数据分析的人,几乎都踩过同一个坑:辛辛苦苦用Pandas跑出来的数据,放到表格里瞬间变“潦草”——数字杂乱无章,没有格式,没有美感,拿去汇报被领导打回,做学术报告拿不出手,连自己复盘都嫌费劲。

很多人被逼着转头用Excel二次排版,跑数10分钟,制表2小时,本末倒置;也有人硬啃Matplotlib、Seaborn的制表功能,代码写了几十行,出来的效果依然差强人意。难道就没有一种方法,能让Python直接输出“拿得出手”的专业表格?

答案藏在Great Tables这个Python库里——它能在5分钟内,把杂乱的DataFrame转换成 publication 级别的美观表格,不用复杂代码,不用二次排版,新手也能一键上手。它的出现,确实解决了数据分析者的核心痛点,但它真的能替代Excel排版、碾压其他制表库吗?是不是噱头大于实用?今天我们就一次性拆透,看完你就知道该不该学。

关键技术详解:免费开源,新手零门槛

Great Tables是一款专门用于Python制表的第三方库,核心作用就是将Pandas或Polars的DataFrame数据,快速转换成美观、专业、可直接复用的展示表格,无需额外的排版操作。

它最大的优势就是“免费+开源”,无任何付费门槛,所有人都能免费下载使用,目前在GitHub上拥有超高人气,星标数量常年稳居同类库前列,社区活跃,遇到问题能快速找到解决方案。与其他制表库相比,它不用记复杂的语法,不用写冗长的代码,核心功能一键调用,哪怕是刚学Python的新手,也能快速上手。

核心拆解:从安装到高级制表,一步一步教你做

Great Tables的强大,在于它的简洁高效——全程不用复杂操作,从安装到做出专业表格,最多5分钟,每一步都有明确的代码指引,跟着做就能成功,我们分4个步骤,完整还原实操过程,所有代码可直接复制运行。

第一步:安装Great Tables(10秒完成)

安装过程极其简单,打开Python编辑器,输入一行命令,回车即可完成安装,无需配置任何环境,适配所有主流Python版本。

pip install great_tables
第二步:30秒做出第一个基础表格

安装完成后,我们快速创建第一个表格,全程只需3步:调用库、创建数据、生成表格,代码简洁易懂,还能自定义表格标题和副标题。

这里需要说明的是,Great Tables支持“方法链”操作,就是在生成表格后,直接追加其他方法进行自定义,不用重复定义变量,大大简化了代码量,这也是它比其他制表库更易用的核心原因之一。

from great_tables import GTimport pandas as pd# 创建DataFrame数据(模拟产品销量数据)df = pd.DataFrame({'Product': ['Widget A', 'Widget B', 'Widget C'],'Sales': [15420.50, 23890.25, 8965.75],  # 已替换为人民币,无需额外换算'Growth': [0.12, 0.34, -0.05]# 生成表格,添加标题和副标题table = (GT(df).tab_header(title="Q4 Product Performance",subtitle="Sales figures in CNY"# 显示表格table

运行这段代码后,就能得到一个干净、整洁的基础表格,数据清晰,标题明确,比Pandas默认输出的表格美观太多,完全可以直接用于简单汇报。这一步的核心是“GT()函数”,只要用它包裹DataFrame,就能快速生成表格,上手难度几乎为零。

第三步:添加专业格式,瞬间提升质感

基础表格虽然简洁,但还不够专业——销量数据没有货币格式,增长率没有百分比标识,列名不够直观,这时我们只需添加3个方法,就能让表格达到“ publication 级别”。

Great Tables提供了多种格式化方法,专门针对不同数据类型设计,不用手动计算或转换,一键就能完成格式设置,下面的代码的是最常用的格式化操作,可直接复制修改使用。

table = (GT(df).tab_header(title="Q4 Product Performance", subtitle="Sales figures in CNY").fmt_currency(columns="Sales", currency="CNY")  # 销量设置为人民币格式.fmt_percent(columns="Growth", decimals=1)  # 增长率设置为百分比,保留1位小数.cols_label(Product="Product Name", Sales="Total Sales", Growth="YoY Growth")  # 自定义列名,更直观table

运行后就能看到,销量数据会显示为“¥15,420.50”这样的人民币格式,增长率显示为“12.0%”,列名也变得更易懂,不用再额外标注说明,别人一眼就能看懂表格内容。

第四步:一键美化+条件格式,让表格更直观

专业的表格,不仅要格式规范,还要有视觉吸引力,Great Tables提供了现成的主题和条件格式功能,不用手动调整颜色、字体,一键就能让表格“亮眼”起来,还能通过颜色快速识别数据规律。

1. 主题美化(36种组合可选)

Great Tables内置6种风格、6种颜色,共36种主题组合,只需用“opt_stylize()”方法,就能一键应用,下面以“蓝色主题6”为例,代码如下:

table = (GT(df).tab_header(title="Q4 Product Performance", subtitle="Sales figures in CNY").fmt_currency(columns="Sales", currency="CNY").fmt_percent(columns="Growth", decimals=1).opt_stylize(style=6, color="blue")  # 应用第6种风格,蓝色配色table
2. 条件格式(快速识别数据规律)

对于多维度数据(比如各地区各季度销量),我们可以用“data_color()”方法添加颜色渐变,数值越高,颜色越深,不用逐一对比,就能快速找到数据亮点和短板,下面是完整实操代码:

# 创建新的DataFrame(模拟各地区各季度销量数据)df2 = pd.DataFrame({'Region': ['North', 'South', 'East', 'West'],'Q1': [234, 189, 267, 201],'Q2': [256, 198, 289, 223],'Q3': [278, 201, 301, 245],'Q4': [290, 215, 312, 259]# 生成带条件格式的表格,销量越高,颜色越深(绿色系)table2 = (GT(df2).tab_header(title="Regional Sales Performance by Quarter").data_color(columns=['Q1', 'Q2', 'Q3', 'Q4'],palette='Greens'  # 绿色渐变调色板table2

运行后会生成一个“热力图式”表格,各地区各季度的销量差异一目了然,东地区Q4销量最高,颜色最深,南部地区Q1销量最低,颜色最浅,汇报时用这样的表格,能让数据更有说服力。

第五步:高级玩法(可选,进阶必备)

如果需要更复杂的表格(比如带趋势图、汇总行、分组列),Great Tables也能轻松实现,下面是原文中“世界人口趋势表格”的完整代码,融合了多种高级功能,可直接复制运行,用于更专业的报告和论文:

import polars as plfrom gapminder import gapminderfrom great_tables import GT, nanoplot_options# 处理数据(从gapminder数据集提取6个国家的人口趋势数据)gapminder_df = pl.from_pandas(gapminder)random_countries = gapminder_df.select("country").unique().sample(n=6)gapminder_summary = (gapminder_df.filter(pl.col("country").is_in(random_countries["country"])).group_by("country").agg(pl.col("year").sort().alias("years"),pl.col("pop").sort_by("year").alias("pop_trend"),pl.col("pop").sort_by("year").last().alias("population_2007"),.with_columns(pl.col("years").list.last().alias("year")).select(["country", "year", "population_2007", "pop_trend"]).sort("population_2007", descending=True)# 生成高级表格(带颜色渐变、趋势图、自定义样式)gt_table = (GT(gapminder_summary).tab_header(title="World Population by Country", subtitle="Population trends from 1952-2007").cols_label(country="Country",year="Latest Year",population_2007="Population (2007)",pop_trend="Population Trend",.data_color(columns="population_2007", palette=["#96C3E0", "#24538E"])  # 人口数据颜色渐变.fmt_integer(columns="population_2007")  # 人口数据设置为整数.fmt_nanoplot(columns="pop_trend",plot_type="bar",options=nanoplot_options(data_bar_stroke_color="#7EA2C6",data_bar_fill_color="#2C5B8F",),)  # 添加人口趋势柱状图.tab_options(heading_background_color="#152649",heading_title_font_size="24px",heading_subtitle_font_size="14px",column_labels_background_color="#2D5C92",)  # 自定义标题和列名样式gt_table
辩证分析:Great Tables虽强,却不是万能的

不可否认,Great Tables的出现,极大地提升了Python数据分析者的制表效率,解决了“跑数易、制表难”的核心痛点,它的优势非常突出——免费开源、操作简单、格式专业、兼容性强,既能适配新手的基础需求,也能满足进阶用户的专业需求,比Pandas默认制表更美观,比Matplotlib制表更简洁,比Excel制表更高效。

但我们不能盲目吹捧,Great Tables也有自身的局限性。它的核心定位是“展示型表格”,擅长将数据转换成美观的展示形式,但如果需要进行复杂的表格计算(比如数据透视、公式运算),它的功能远不如Excel;如果需要制作极度个性化的表格样式(比如复杂的合并单元格、自定义边框),它的灵活性也不如一些专业的前端制表工具。

更重要的是,Great Tables依赖Python环境,对于不熟悉Python的人来说,哪怕它操作再简单,也需要先学习基础的Python语法和Pandas知识,才能上手使用,这无疑抬高了非技术人员的使用门槛。所以,Great Tables不是“万能制表工具”,而是“Python数据分析者的专属制表神器”,它的价值,在于和Excel、其他制表工具形成互补,而不是替代。

我们更应该理性看待:没有最好的工具,只有最适合自己的工具。如果你常年用Python做数据分析,需要频繁生成汇报、报告用的表格,那么Great Tables绝对值得你花5分钟学会;但如果你主要做表格计算、数据统计,很少用Python,那么Excel依然是更合适的选择。

现实意义:学会它,节省80%的制表时间

在数据分析岗位竞争日益激烈的今天,效率就是竞争力。很多数据分析者,每天要花大量时间在“重复劳动”上,其中制表就是最耗时的环节之一——跑数10分钟,排版2小时,不仅浪费时间,还容易出错,甚至影响工作进度。

Great Tables的核心价值,就是帮我们“省去重复排版的时间”,把更多精力放在数据本身的分析和解读上。学会它之后,无论是日常汇报、学术论文,还是商业报告,都能快速生成专业、美观的表格,不用再手动调整格式,不用再在Python和Excel之间来回切换,5分钟就能搞定以前2小时才能完成的工作。

除此之外,掌握Great Tables,也能让你的数据分析成果更“亮眼”。同样的数据分析结果,用杂乱无章的表格呈现,和用专业美观的表格呈现,给领导、客户、老师的印象截然不同——专业的表格,不仅能让数据更直观、更有说服力,还能体现你的专业性和严谨性,在汇报、答辩、求职中,都能加分不少。

对于新手来说,Great Tables也是一个“快速提升竞争力”的工具。它操作简单,入门门槛低,花1小时就能掌握核心用法,学会之后,就能轻松做出专业级别的表格,在同龄人中脱颖而出;对于资深数据分析者来说,它能极大地提升工作效率,节省下来的时间,能用于更深入的数据分析,创造更大的价值。

互动话题:你平时用什么工具制表?

看到这里,相信你已经对Great Tables有了全面的了解——它不是噱头,而是真正能解决痛点、提升效率的实用工具,5分钟就能上手,学会就能节省大量时间。

来评论区聊聊吧:你平时做数据分析、写汇报时,都是用什么工具制表的?有没有踩过“跑数易、制表难”的坑?你觉得Great Tables能替代Excel的排版功能吗?

另外,如果你已经上手了Great Tables,欢迎在评论区分享你的制表成果;如果还没学会,收藏这篇文章,跟着里面的代码一步步操作,5分钟就能做出专业表格,新手也能轻松拿捏!

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
在日华人直言:如今中国要是再和日本发生冲突,根本撑不过14年!

在日华人直言:如今中国要是再和日本发生冲突,根本撑不过14年!

南权先生
2026-02-12 15:39:07
美国专家称:崛起的中国并不可怕,真正可怕的是他们从来不会提及自身血统

美国专家称:崛起的中国并不可怕,真正可怕的是他们从来不会提及自身血统

文史明鉴
2026-01-29 20:01:08
45岁富哥“北京肖哥”去世,前一天还晒老婆,死因曝光仇人都惋惜

45岁富哥“北京肖哥”去世,前一天还晒老婆,死因曝光仇人都惋惜

嫹笔牂牂
2025-12-31 07:07:52
深圳官方下场了,让大家搞“一人公司”!网友:打工是给你自己打

深圳官方下场了,让大家搞“一人公司”!网友:打工是给你自己打

火山詩话
2026-02-14 09:18:02
52岁吴越独自在家包馄饨,素颜穿红色毛衣,为人低调朴素,很顾家

52岁吴越独自在家包馄饨,素颜穿红色毛衣,为人低调朴素,很顾家

东方不败然多多
2026-02-12 00:33:21
扫地出门!曼城批准7000万前锋转投热刺!1.3亿“顶星”投奔瓜帅

扫地出门!曼城批准7000万前锋转投热刺!1.3亿“顶星”投奔瓜帅

头狼追球
2026-02-15 07:08:08
原来没见过世面的样子都很一致!网友:以为柠檬水 硬生生喝了半盆

原来没见过世面的样子都很一致!网友:以为柠檬水 硬生生喝了半盆

另子维爱读史
2025-12-23 16:23:36
准备差不多了,川普开始说真话,首次说政权更迭是伊朗最好结果

准备差不多了,川普开始说真话,首次说政权更迭是伊朗最好结果

邵旭峰域
2026-02-14 11:24:20
利雅得胜利2-0客胜哈萨征服,C罗回归后首战破门,叶海亚建功

利雅得胜利2-0客胜哈萨征服,C罗回归后首战破门,叶海亚建功

懂球帝
2026-02-15 03:35:16
她是中国年纪最小的军官,6岁被特招入伍,皆因身怀一项特殊技能

她是中国年纪最小的军官,6岁被特招入伍,皆因身怀一项特殊技能

寄史言志
2026-01-28 17:52:07
年后有定期存款的,银行建议:年后要做的准备,别不当回事

年后有定期存款的,银行建议:年后要做的准备,别不当回事

次元君情感
2026-02-15 19:45:54
回到梦开始的地方,杜兰特盛赞旧主:没人想到马刺这么强

回到梦开始的地方,杜兰特盛赞旧主:没人想到马刺这么强

大眼瞄世界
2026-02-15 07:54:10
高市怕什么来什么,联合国修改二战历史,将日本钉在耻辱柱上

高市怕什么来什么,联合国修改二战历史,将日本钉在耻辱柱上

今日养生之道
2026-02-15 13:46:20
现在全网最尴尬的,估计就得是李亚鹏了。

现在全网最尴尬的,估计就得是李亚鹏了。

小光侃娱乐
2026-02-15 09:30:07
高薪也高能!曼城冬窗总价3000万镑签格伊 加盟后各赛事4胜1平

高薪也高能!曼城冬窗总价3000万镑签格伊 加盟后各赛事4胜1平

智道足球
2026-02-15 11:20:08
AI 开始网暴人类了!OpenClaw 被拒后怒发「小作文」开撕,网友:我站 AI

AI 开始网暴人类了!OpenClaw 被拒后怒发「小作文」开撕,网友:我站 AI

AppSo
2026-02-14 13:09:31
赫鲁晓夫回忆斯大林临终之际:猜忌身边所有人,却又深陷孤独的痛苦之中

赫鲁晓夫回忆斯大林临终之际:猜忌身边所有人,却又深陷孤独的痛苦之中

史海孤雁
2026-02-13 10:44:08
300一件的“拼好貂”,横扫县城春节?

300一件的“拼好貂”,横扫县城春节?

凤凰网财经
2026-02-14 18:30:10
C罗又给人出难题!沙特联赛现在很尴尬,拿一座冠军体面离开?

C罗又给人出难题!沙特联赛现在很尴尬,拿一座冠军体面离开?

足坛刘脂导
2026-02-15 17:18:34
北极为什么没有企鹅?当年放养北极的69只企鹅,后来怎么样了?

北极为什么没有企鹅?当年放养北极的69只企鹅,后来怎么样了?

半解智士
2025-12-25 20:01:24
2026-02-15 22:39:00
侃故事的阿庆
侃故事的阿庆
几分钟看完一部影视剧,诙谐幽默的娓娓道来
410文章数 7626关注度
往期回顾 全部

科技要闻

发春节红包的大厂都被约谈了

头条要闻

TikTok大量老外介绍自己:Ni hao 我们都是中国人了

头条要闻

TikTok大量老外介绍自己:Ni hao 我们都是中国人了

体育要闻

最戏剧性的花滑男单,冠军为什么是他?

娱乐要闻

河南春晚被骂上热搜!大量广告满屏AI

财经要闻

谁在掌控你的胃?起底百亿"飘香剂"江湖

汽车要闻

奔驰中国换帅:段建军离任,李德思接棒

态度原创

健康
房产
游戏
数码
公开课

转头就晕的耳石症,能开车上班吗?

房产要闻

三亚新机场,又传出新消息!

大话西游手游五福临门怎么玩?想拿高分一定要凑出来五福临门

数码要闻

机械革命无界14 2026预热:Lunar Lake集成内存,无惧内存涨价

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版