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

为什么从openpyxl导入PieChart时出现ImportError: cannot import name 'PieChart'错误

问题原因

你代码里一共存在3处错误导致无法正常生成饼图:

  • 销量数据使用了字符串格式:你定义的sold列值都加了单引号,属于字符串类型,Excel图表无法识别字符串作为数值统计源
  • 数据引用列错误:你指定数据区域时用了min_col=1,引用的是第一列的口味文本列,实际存储销量的是第二列
  • titles_from_data参数配置错误:你引用的数据范围从第二行开始,未包含表头行,不需要开启该参数

修正后代码

import openpyxl
from openpyxl import PieChart, Reference
wb = openpyxl.Workbook()
ws = wb.active

# 去掉销量值的引号,改成纯数字
data = [
    ['Flavor', 'Sold'],
    ['Vanilla', 1500],
    ['Chocolate', 1600],
    ['Strawberry', 600],
    ['Pumpkin Spice', 950]
]

for rows in data:
    ws.append(rows)

chart = PieChart()
# 标签引用第一列2-5行无问题
labels = Reference(ws, min_col=1, min_row=2, max_row=5)
# 数据改为引用第二列的销量数据
data_ref = Reference(ws, min_col=2, min_row=2, max_row=5)
chart.add_data(data_ref)
chart.set_categories(labels)
chart.title = 'Ice Cream By Flavor'

ws.add_chart(chart, 'C1')
wb.save('Pie1.xlsx')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 06:12:03