要画雷达图,但是数据好多组怎么办?不能一个一个点excel去画吧,那么可以利用python进行批量制作,得到样式如下:
首先制作一个演示的excel,评分为excel随机数生成:
1 =INT((RAND()+4)*10)/10
加入标签等得到的excel样式如下(部分,共计32行):
那么接下来就是打开python写码了,本文是基于python3.4进行编写
1 wb = load_workbook(filename=r'C:\Users\Administrator\Desktop\数据指标.xlsx') ##读取路径 2 ws = wb.get_sheet_by_name("Sheet1") ##读取名字为Sheet1的sheet表 3 4 info_id = [] 5 info_first = [] 6 7 for row_A in range(2, 32): ## 遍历第2行到32行 8 id = ws.cell(row=row_A, column=1).value ## 遍历第2行到32行,第1列 9 info_id.append(id) 10 for col in range(2, 9): ##读取第1到9列 11 first = ws.cell(row=1, column=col).value 12 info_first.append(first) ##得到1到8列的标签 13 14 info_data = [] 15 for row_num_BtoU in range(2, len(info_id) + 2): ## 遍历第2行到32行 16 row_empty = [] ##建立一个空数组作为临时储存地,每次换行就被清空 17 for i in range(2, 9): ## 遍历第2行到32行,第2到9列 18 data_excel = ws.cell(row=row_num_BtoU, column=i).value 19 if data_excel == None: 20 pass 21 else: 22 row_empty.append(data_excel) ##将单元格信息储存进去 23 info_data.append(row_empty)
分步讲解:
读取excel表格:
1 wb = load_workbook(filename=r'C:\Users\Administrator\Desktop\数据指标.xlsx') ##读取路径 2 ws = wb.get_sheet_by_name("Sheet1") ##读取名字为Sheet1的sheet表
需要用到库:
1 import xlsxwriter
1 from openpyxl import load_workbook
在命令指示符下输入:
1 pip install xlsxwriter
等待安装即可,后面的库也是如此:
将第一列ID储存,以及第一行的标签,标签下面的数值分别储存在:
info_id = [] info_first = [] info_data = []
读取数据后接下来需要设置写入的格式:
1 workbook = xlsxwriter.Workbook('C:\\Users\\Administrator\\Desktop\\result.xlsx