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的参数后应是“=工作表名称!坐标”,如下图:需要将表名统一
祝学习愉快~
相似问题