python处理excel绘制雷达图

yipeiwu_com7年前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动态赋值的陷阱知识点总结

忘了在哪看到一位编程大牛调侃,他说程序员每天就做两件事,其中之一就是处理字符串。相信不少同学会有同感。 几乎任何一种编程语言,都把字符串列为最基础和不可或缺的数据类型。而拼接字符串是必备...

解决python 自动安装缺少模块的问题

场景 我写个脚本给别人用,但是这个脚本中包含了一个第三方库。 当然对方执行的时候就会提示缺少,能否让python自动安装呢? 解决 try: import requests exc...

Python3实现的反转单链表算法示例

本文实例讲述了Python3实现的反转单链表算法。分享给大家供大家参考,具体如下: 反转一个单链表。 方案一:迭代 # Definition for singly-linked li...

python多线程编程方式分析示例详解

在Python多线程中如何创建一个线程对象如果你要创建一个线程对象,很简单,只要你的类继承threading.Thread,然后在__init__里首先调用threading.Threa...

python3.6使用tkinter实现弹跳小球游戏

本文实例为大家分享了python3.6实现弹跳小球游戏的具体代码,供大家参考,具体内容如下 import random import time from tkinter import...