python处理excel绘制雷达图

yipeiwu_com6年前Python基础

本文实例为大家分享了python处理excel绘制雷达图的具体代码,供大家参考,具体内容如下

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")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python查询sqlite数据表的方法

本文实例讲述了python查询sqlite数据表的方法。分享给大家供大家参考。具体实现方法如下: import sqlite3 as db conn = db.connect('my...

python 函数内部修改外部变量的方法

如果内部修改外部变量需要nonlocal,global def f1(): print("in f1..") num=111 def f2(): nonlocal num...

使用python实现ftp的文件读写方法

ftp登陆连接 from ftplib import FTP #加载ftp模块 ftp=FTP() #设置变量 ftp.set_debuglevel...

python中报错"json.decoder.JSONDecodeError: Expecting value:"的解决

在学习python语言中用json库解析网络数据时,我遇到了两个编译错误:json.decoder.JSONDecodeError: Expecting property name en...

在Python的Flask框架中使用日期和时间的教程

在Python的Flask框架中使用日期和时间的教程

 时间戳的问题 我们的微博应用的一个忽略了很久的问题就是日间和日期的显示。 直到现在,我们在我们的User和Post对象中使用Python它自己的方式来渲染时间对象,但这并不是...