亲宝软件园·资讯

展开

python处理excel绘制雷达图

人气:0

python处理excel制成雷达图,利用工具plotly在线生成,事先要安装好xlrd组件

代码:

import xlrd //事先要下载好xlrd组件
import plotly.plotly as py
import plotly.graph_objs as go
from plotly import tools
from plotly.graph_objs import *
tools.set_credentials_file(username='  ', api_key='  ')

fname="**********.xlsx"
df=xlrd.open_workbook(fname)
sh=df.sheet_by_name("Sheet1")
nrows=sh.nrows
ncols=sh.ncols
row_list=[]
for i in range(0,nrows):
 row_data=sh.row_values(i)
 row_list.append(row_data)
col_list=[]
for i in range(0,ncols):
 col_data=sh.col_values(i)
 col_list.append(col_data)


data = [          //数据根据自己的实际情况来
 go.Scatterpolar(
  r = [col_list[1][2],col_list[1][3], col_list[1][4], col_list[1][5], col_list[1][6], col_list[1][7],
  col_list[1][8], col_list[1][9], col_list[1][10], col_list[1][11], col_list[1][12],
  col_list[1][13], col_list[1][14], col_list[1][15], col_list[1][16], col_list[1][17],
  col_list[1][18], col_list[1][19], col_list[1][20], col_list[1][21], col_list[1][22],
  col_list[1][23], col_list[1][24], col_list[1][25], col_list[1][26], col_list[1][27],
  col_list[1][28], col_list[1][29], col_list[1][30], col_list[1][31], col_list[1][32],

  col_list[1][33], col_list[1][34], col_list[1][35], col_list[1][36], col_list[1][37],col_list[1][38]],
  theta = [0,10,20, 30, 40, 50,60,70,80,90,100,110,120,130,140,150,160,170,180,190,200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350,0],
  fill = 'toself',
  name = 'TX'
 ),
 go.Scatterpolar(
  r = [col_list[4][2],col_list[4][3], col_list[4][4], col_list[4][5], col_list[4][6], col_list[4][7],
  col_list[4][8], col_list[4][9], col_list[4][10], col_list[4][11], col_list[4][12],
  col_list[4][13], col_list[4][14], col_list[4][15], col_list[4][16], col_list[4][17],
  col_list[4][18], col_list[4][19], col_list[4][20], col_list[4][21], col_list[4][22],
  col_list[4][23], col_list[4][24], col_list[4][25], col_list[4][26], col_list[4][27],
  col_list[4][28], col_list[4][29], col_list[4][30], col_list[4][31], col_list[4][32],
  col_list[4][33], col_list[4][34], col_list[4][35], col_list[4][36], col_list[4][37],col_list[4][38]],
  theta = ['0',10,20, 30, 40, 50,60,70,80,90,100,110,120,130,140,150,160,170,180,190,200,210,220,230,240,250,260,270,280,290,300,310,320,330,340,350,0],
  fill = 'toself',
  name = 'RX'
 )
]

layout = go.Layout(
 polar = dict(
 radialaxis = dict(
  visible = True,
  range = [0, 110]
 )
 ),
 showlegend = False
)

fig = go.Figure(data=data, layout=layout)
py.plot(fig, filename = "radar")
您可能感兴趣的文章:

加载全部内容

相关教程
猜你喜欢
用户评论