如何为Pandas DataFrame的索引设置垂直描述标题
Pandas给DataFrame索引添加垂直标题的解决方案
问题原因
你之前尝试的df.index.style.set_caption('Numbers')无效,是因为Index对象不存在style属性,且set_caption仅用于设置表格顶部的全局标题,无法直接为索引添加垂直标题。
实现代码
import pandas as pd import numpy as np # 生成示例数据 df = pd.DataFrame(np.random.randint(0,100,size=(15, 12)), columns=list('ABCDEFGHIJKL')) # 设置列标题(表格顶部) style = df.style.set_caption('Letters') # 通过CSS样式实现索引的垂直标题 style.set_table_styles([ { 'selector': '.index_name', 'props': [ ('writing-mode', 'vertical-rl'), ('text-orientation', 'mixed'), ('transform', 'rotate(180deg)'), ('font-weight', 'bold'), ('padding', '5px') ] } ]) # 必须为索引设置名称,否则标题无法显示 df.index.name = 'Numbers' # 渲染样式化表格 style
关键说明
- 索引命名:
df.index.name = 'Numbers'是显示索引标题的必要前提,没有这一步,索引区域不会出现标题文本。 - CSS样式调整:通过
writing-mode设置垂直排版,transform: rotate(180deg)修正文字方向,确保垂直标题可读;font-weight和padding优化标题的视觉效果。 - 列标题设置:保留
set_caption('Letters')实现表格顶部的列标题显示。
内容的提问来源于stack exchange,提问作者Deke Marquardt
相关产品推荐
相关产品推荐

