最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python xlsxwriter庫生成圖表的應(yīng)用示例

 更新時(shí)間:2018年03月16日 10:04:11   作者:北京流浪兒  
這篇文章主要介紹了python xlsxwriter庫生成圖表的應(yīng)用示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

xlsxwriter可能用過的人并不是很多,不過使用后就會感覺,他的功能讓你嘆服,除了可以按要求生成你所需要的excel外

還可以加上很形象的各種圖,比如柱狀圖、餅圖、折線圖等。

xlsxwriter 基本用法,創(chuàng)建 xlsx 文件并添加數(shù)據(jù)

官方文檔:http://xlsxwriter.readthedocs.org/  

xlsxwriter 可以操作 xls 格式文件

注意:xlsxwriter 只能創(chuàng)建新文件,不可以修改原有文件。如果創(chuàng)建新文件時(shí)與原有文件同名,則會覆蓋原有文件

Linux 下安裝: sudo pip install XlsxWriter

Windows 下安裝: pip install XlsxWriter

請看本人生成的:

 

這里包含了數(shù)據(jù)公式的計(jì)算,插入圖片的連接,生成的圖表,當(dāng)然如果你還需要其他的功能,可以繼續(xù)參考庫的文檔

下面把源代碼貼出來,希望對大家在工作遇到類似的情況,可以直接拿去用。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:Eric.yue

import xlsxwriter
import random
from datetime import date
import collections

def xlwt_chart(xl_obj,table):

  #生成柱狀圖
  column_chart = xl_obj.add_chart({'type':'column'})
  column_chart.add_series({
    'name':'=sheet1!$D$1',
    'categories':'=sheet1!$D$2:$D$7',
    'values':'=sheet1!$E$2:$E$7'
  })
  table.insert_chart('G2',column_chart)

  #生成餅圖
  column_chart2 = xl_obj.add_chart({'type':'pie'})
  column_chart2.add_series({
    'name': '=sheet1!$D$1',
    'categories':'=sheet1!$D$2:$D$7',
    'values': '=sheet1!$E$2:$E$7'
  })
  table.insert_chart('G20', column_chart2)


def xlwt_run():
  data_base = ['0-50','50-60','60-70','70-80','80-90','90-100']

  #生成一個(gè)有序的字典
  chart_dict = collections.OrderedDict.fromkeys(data_base,0)

  xl_obj = xlsxwriter.Workbook('chart.xlsx')
  table = xl_obj.add_worksheet('sheet1')
  table.write_string(0,0,u'姓名')
  table.write_string(0,1,u'成績')
  table.write_string(0,2,u'日期')
  table.merge_range('D1:E1', u'成績分布')
  table.set_column('C:E',15)

  #定義格式
  date_format = xl_obj.add_format({'num_format':'yyyy-mm-dd'})
  color_format = xl_obj.add_format({'color':'red'})
  font_format = xl_obj.add_format({'font_color':'green','bold':True})

  mm = 1
  for i in xrange(1,40):
    name = 'name_%d' % i
    score = random.randint(30,100)
    if score <= 50:
      chart_dict['0-50'] += 1
    elif score>50 and score<=60:
      chart_dict['50-60'] += 1
    elif score>60 and score<=70:
      chart_dict['60-70'] += 1
    elif score>70 and score<=80:
      chart_dict['70-80'] += 1
    elif score>80 and score<=90:
      chart_dict['80-90'] += 1
    else:
      chart_dict['90-100'] += 1

    if score > 60:
      table.write_string(i, 0, name)
      table.write_number(i, 1, score)
    else:
      table.write_string(i, 0, name, color_format)
      table.write_number(i, 1, score, color_format)

    table.write_datetime(i, 2,date.today(), date_format)
    mm = mm + 1

  #生成圖表數(shù)據(jù)
  row = 1
  for k,v in chart_dict.items():
    table.write_string(row, 3, k, font_format)
    table.write_number(row, 4, v, font_format)
    row = row+1

  xlwt_chart(xl_obj,table)
  #使用公式
  table.write_formula(mm,1,'=AVERAGE(B2:B40)')
  #插入帶鏈接的圖片
  table.insert_image('D20',r'/home/mywork/pythonchina/cto51_log/bd_logo12.png',{'url':'https://www.baidu.com'})

  #關(guān)閉excel句柄
  xl_obj.close()

if __name__ == '__main__':
  xlwt_run()

沒有使用類寫,只是即興而作。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python內(nèi)置函數(shù)frozenset()的使用小結(jié)

    python內(nèi)置函數(shù)frozenset()的使用小結(jié)

    本篇文章主要介紹了python內(nèi)置函數(shù)frozenset()的使用小結(jié),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-05-05
  • 淺談算法之最小生成樹Kruskal的Python實(shí)現(xiàn)

    淺談算法之最小生成樹Kruskal的Python實(shí)現(xiàn)

    最小生成樹Kruskal算法可以稱為“加邊法”,初始最小生成樹邊數(shù)為0,每迭代一次就選擇一條滿足條件的最小代價(jià)邊,加入到最小生成樹的邊集合里。本文將介紹它的原理,并用Python進(jìn)行實(shí)現(xiàn)
    2021-06-06
  • python下對hsv顏色空間進(jìn)行量化操作

    python下對hsv顏色空間進(jìn)行量化操作

    這篇文章主要介紹了python下對hsv顏色空間進(jìn)行量化操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Python使用defaultdict讀取文件各列的方法

    Python使用defaultdict讀取文件各列的方法

    這篇文章主要介紹了Python使用defaultdict讀取文件各列的方法,涉及Python針對文件相關(guān)讀取、遍歷操作技巧,需要的朋友可以參考下
    2017-05-05
  • 將python2.7添加進(jìn)64位系統(tǒng)的注冊表方式

    將python2.7添加進(jìn)64位系統(tǒng)的注冊表方式

    今天小編就為大家分享一篇將python2.7添加進(jìn)64位系統(tǒng)的注冊表方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • 更新升級python和pip版本后不生效的問題解決

    更新升級python和pip版本后不生效的問題解決

    這篇文章主要介紹了更新升級python和pip版本后不生效的問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 接口自動化多層嵌套json數(shù)據(jù)處理代碼實(shí)例

    接口自動化多層嵌套json數(shù)據(jù)處理代碼實(shí)例

    這篇文章主要介紹了接口自動化多層嵌套json數(shù)據(jù)處理代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-11-11
  • Python如何合并多個(gè)字典或映射

    Python如何合并多個(gè)字典或映射

    這篇文章主要介紹了Python如何合并多個(gè)字典或映射,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • Python可視化神器pyecharts之繪制地理圖表練習(xí)

    Python可視化神器pyecharts之繪制地理圖表練習(xí)

    這篇文章主要介紹了Python可視化神器pyecharts之繪制地理圖表,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-07-07
  • Python?Pygame實(shí)戰(zhàn)之紅心大戰(zhàn)游戲的實(shí)現(xiàn)

    Python?Pygame實(shí)戰(zhàn)之紅心大戰(zhàn)游戲的實(shí)現(xiàn)

    說起Windows自帶的游戲,相信許多80、90后的朋友都不陌生。本文就將利用Python中的Pygame模塊實(shí)現(xiàn)一下windows經(jīng)典游戲之一的紅心大戰(zhàn),需要的可以參考一下
    2022-02-02

最新評論

边坝县| 任丘市| 左权县| 富裕县| 康平县| 三原县| 鲁山县| 马鞍山市| 东港市| 自治县| 余庆县| 营口市| 蒲江县| 特克斯县| 开封市| 南和县| 耒阳市| 和顺县| 磐安县| 鄂州市| 曲周县| 白山市| 柘荣县| 玉溪市| 柞水县| 西贡区| 沧源| 青冈县| 休宁县| 胶南市| 全南县| 金溪县| 钟祥市| 奉新县| 永吉县| 朝阳区| 郯城县| 大埔县| 西安市| 宜宾市| 沂南县|