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

使用Python的docx包处理Word文档中的图表信息相关问题

Python-docx 访问Word嵌入式图表方案

python-docx 原生内置了图表处理接口,无需通过通用嵌入式对象底层接口解析,操作方法如下:

基础访问方式

  • 首先确保安装了最新稳定版的python-docx依赖
  • 遍历文档的inline_shapes集合,通过has_chart属性筛选图表对象:
from docx import Document

# 加载Word文档
doc = Document("target.docx")

# 遍历所有嵌入式元素
for shape in doc.inline_shapes:
    if shape.has_chart:
        # 获取图表实例
        current_chart = shape.chart
        # 打印基础属性验证
        print(f"图表类型:{current_chart.chart_type}")
        # 遍历图表数据
        for series in current_chart.series:
            print(f"系列名:{series.name}, 数据值:{list(series.values)}")

常见操作示例

修改图表数据

from docx.chart.data import CategoryChartData

# 构造新的图表数据集
chart_data = CategoryChartData()
chart_data.categories = ["Q1", "Q2", "Q3", "Q4"]
chart_data.add_series("产品A", [230, 150, 380, 290])
chart_data.add_series("产品B", [180, 260, 210, 340])

# 替换现有图表数据
current_chart.replace_data(chart_data)

# 保存修改后的文档
doc.save("updated.docx")

注意事项

  • 仅支持标准Office Open XML格式的.docx文件,二进制.doc格式无法直接处理
  • 如果你需要处理浮动式图表(非嵌入式排版的图表),替换遍历对象为doc.shapes即可,判断逻辑一致
  • 非Office原生生成的非标格式图表可能存在识别失败的情况

内容的提问来源于stack exchange,提问作者Clarence Ong

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.11 03:42:02