excel表格里生成的图表没有数据,总是有一个警告
来源:4-5 项目作业
梦还在梦里
2022-08-06 22:43:32
代码运行过一次可以生成正常的图表,后面再次运行总是有警告如下
# UserWarning: Unknown worksheet reference '学生等级' in range '学生等级!$A$1:$A$4' passed to add_series()
warn("Unknown worksheet reference '%s' in range "
# UserWarning: Unknown worksheet reference '学生等级' in range '学生等级!$B$1:$B$4' passed to add_series()
warn("Unknown worksheet reference '%s' in range "我的代码如下:
# coding:utf-8
import xlsxwriter
def creat_chart(path, data, **table_con):
# 对象生成
excel = xlsxwriter.Workbook(path)
sheet = excel.add_worksheet('chart')
# 数据添加
sheet.write_column('A1', data[0])
sheet.write_column('B1', data[1])
n = len(data[0])
# 生成图表对象
chart = excel.add_chart({'type': 'radar'})
# 添加图形
chart.add_series({
'categories': "=%s!$A$1:$A$%d" % (table_con['categories'], n),
'values': "=%s!$B$1:$B$%d" % (table_con['categories'], n),
'name': table_con['name']
})
chart.set_title({'name': f"{table_con['title']}"})
sheet.insert_chart('A10', chart)
excel.close()
if __name__ == '__main__':
data = [
['优秀', '良好', '中', '差'],
[1100, 2000, 1000, 900]
]
creat_chart(
'creat_chart.xlsx', data,
categories='学生等级',
name='成绩占比',
title='成绩占比图'
)
1回答
同学,你好!
add_series( )方法中参数错误,categories、values的参数后应是“=工作表名称!坐标”,如下图:需要将表名统一

祝学习愉快~
相似问题