Python 在Excel中添加数据条

在Excel中添加数据条是一种数据可视化技巧,它通过条形图的形式在单元格内直观展示数值的大小,尤其适合比较同一列或行中各个单元格的数值。这种表示方式可以让大量的数字信息一目了然。本文将介绍如何使用Python在Excel中的指定单元格区域添加数据条。

Python Excel库

Spire.XLS for Python 库支持设置各种Excel条件格式以及其他Excel文档操作。该库可以直接使用以下pip命令安装:(也可以下载产品包后再从本地路径安装)

pip install Spire.XLS

Python 在Excel 中的添加数据条

为Excel中指定单元格区域添加数据条,需要通过Spire.XLS for Python库提供的条件格式的各类接口实现。主要步骤如下:

  1. 使用LoadFromFile()方法加载 Excel文件;
  2. 获取指定工作表,然后在其中添加条件格式并返回 XlsConditionalFormats 对象。
  3. 使用 AddRange() 方法指定需要应用条件格式化的单元格区域。
  4. 使用 AddCondition() 方法添加条件,然后通过 IConditionalFormat.FormatType 属性将其类型设置为数据条DataBar。
  5. 设置数据条的填充效果和颜色。
  6. 使用 SaveToFile() 方法保存文档。

Python代码:

python 复制代码
from spire.xls import *
from spire.xls.common import *

# 加载Excel文件
workbook = Workbook()
workbook.LoadFromFile("报告1.xlsx")

# 获取第一张工作表
sheet = workbook.Worksheets[0]

# 在指定单元格区域应用条件格式
xcfs = sheet.ConditionalFormats.Add()
xcfs.AddRange(sheet.Range["D2:D12"])

# 添加数据条
format = xcfs.AddCondition()
format.FormatType = ConditionalFormatType.DataBar

# 设置填充效果和颜色
format.DataBar.BarFillType = DataBarFillType.DataBarFillGradient
format.DataBar.BarColor = Color.get_Red()

# 保存文档
workbook.SaveToFile("Excel数据条.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

输出文件


Spire.XLS for Python库还支持设置其他条件格式,如交替行颜色、突出显示高于或低于平均值的数值、突出显示排名前几和后几位的数值等。
https://www.e-iceblue.cn/xls_python_conditional_formatting/python-apply-conditional-formatting-in-excel.html

相关推荐
溪语流沙7 小时前
【Web全栈进阶】前端对接新契约:信封解包 + 统一错误处理
前端·vue.js·python·状态模式·fastapi
Python图像识别7 小时前
56-【2027毕设】YOLO11X光安检危险物品检测系统 - Python完整源码+PyQt5界面+训练模型+数据集
python·qt·课程设计
winfredzhang8 小时前
从零实现“照片按地理位置显示在矢量地图上”:Flask + SQLite + Leaflet 全栈实战
python·sqlite·flask
外收内放8 小时前
Python基础语法练习题(72)
开发语言·python
171320330计算机毕设编程8 小时前
计算机毕业设计 基于Hadoop的新能源汽车发展前景分析 LW PPT
java·大数据·hadoop·python·算法·随机森林·线性回归
科创致远8 小时前
科创致远 ESD 静电监控全景落地指南
人工智能·信息可视化·制造·精益工程
haluhalu.8 小时前
深入理解 AI Agent(1.2):Harness 工程——模型之外的竞争力
前端·数据结构·人工智能·python·langchain·个人开发
东莞市云毅网络有限公司9 小时前
把网页表格与列表还原成结构化条目:抽取与对账实现
python·文本处理·数据抽取
夜瞬9 小时前
从零微调 Qwen3-8B:基于 LoRA 与 LLaMA-Factory 打造专属 AI 编程助教
人工智能·python·llama
旺旺的碎冰冰~9 小时前
VScode解决终端输出中文乱码问题
ide·vscode·编辑器