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 set内置函数的具体使用

set集合 无序可变 由不同元素组成 其元素必须为可哈希的类型(通俗来说不可变类型) 集合的两种定义方式 使用{} Eg:{1,2,3,4,5} 使用set(可...

Python开发常用的一些开源Package分享

一般安装完Python后,我会先装一些常用的Package。做个笔记,记录下来,以备查询: Web FrameWorks Tornado,访问:http://www.tornadoweb...

python自定义异常实例详解

python自定义异常实例详解          本文通过两种方法对Python 自定义异常进行讲解,第一...

python线程安全及多进程多线程实现方法详解

进程和线程的区别 进程是对运行时程序的封装,是系统资源调度和分配的基本单位 线程是进程的子任务,cpu调度和分配的基本单位,实现进程内并发。 一个进程可以包含多个线程,线...

python使用SMTP发送qq或sina邮件

python使用SMTP发送qq或sina邮件

python使用qq邮箱(个人邮箱)发送邮件需开启qq邮箱的SMTP服务 在设置中开启pop3/SMTP服务,返回的密码就是之后代码中登录使用账户密码(在完整代码中标识了出来) 之后出...