日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

如何使用python的openpyxl进行强大的图表处理

發布時間:2024/1/8 python 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 如何使用python的openpyxl进行强大的图表处理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

? ? ? ?openpyxl模塊讓python程序能夠讀取和修改Excel電子表格文件,生成需要的新點子表格。從許多的幾萬行級的電子表格中定位需要的數據或需要處理的數據,并進行精細化加工,替代低效率的腦殘體力勞動,正是openpyx的可愛之處。

? ? ? ?之前在”python進階寶典10-Excel處理(https://blog.csdn.net/ebzxw/article/details/80261507)“中,已經詳細的列明了openpyxl對excel的各類讀寫基本操作,以及設置字體、公式、行高、列寬、合并拆分單元格、生成凍結窗口、圖表處理等各種操作的實現方法,并列出了code。

? ? ? ?openpyxl通過charts進行圖表處理,詳細官方文檔鏈接:http://openpyxl.readthedocs.io/en/stable/charts/bar.html

? ? ? ?這里在就強大圖表處理功能進行下補充。實在是太強大,各種圖表都有如下。

? ? ? ?

? ? ? ? 以BarChart為例,?在BarChart中,圖表類型可以通過眾多參數設置。

? ? ? ?值被繪制為水平條或垂直列:通過將類型設置為COL或BAR,即可在垂直和水平條形圖之間切換;當使用堆疊圖時,重疊需要設置為100??梢酝ㄟ^chartObj.y_axis.title='Test_y', chartObj.x_axis.title='Test_x' 設置坐標軸的屬性;通過chartObj.type='col'? ?(col為縱向,bar為橫向),chartObj.title='Bar chart' 等來設置圖表的屬性等。

? ? ? ? 以下代碼生成4種2D圖表。

from openpyxl import Workbook from openpyxl.chart import BarChart, Series, Referencewb = Workbook(write_only=True) ws = wb.create_sheet()rows = [('Number', 'Batch 1', 'Batch 2'),(2, 10, 30),(3, 40, 60),(4, 50, 70),(5, 20, 10),(6, 10, 40),(7, 50, 30), ]for row in rows:ws.append(row)chart1 = BarChart() chart1.type = "col" chart1.style = 10 chart1.title = "Bar Chart" chart1.y_axis.title = 'Test number' chart1.x_axis.title = 'Sample length (mm)'data = Reference(ws, min_col=2, min_row=1, max_row=7, max_col=3) cats = Reference(ws, min_col=1, min_row=2, max_row=7) chart1.add_data(data, titles_from_data=True) chart1.set_categories(cats) chart1.shape = 4 ws.add_chart(chart1, "A10")from copy import deepcopychart2 = deepcopy(chart1) chart2.style = 11 chart2.type = "bar" chart2.title = "Horizontal Bar Chart" ws.add_chart(chart2, "G10")chart3 = deepcopy(chart1) chart3.type = "col" chart3.style = 12 chart3.grouping = "stacked" chart3.overlap = 100 chart3.title = 'Stacked Chart' ws.add_chart(chart3, "A27")chart4 = deepcopy(chart1) chart4.type = "bar" chart4.style = 13 chart4.grouping = "percentStacked" chart4.overlap = 100 chart4.title = 'Percent Stacked Chart' ws.add_chart(chart4, "G27")wb.save("bar.xlsx")

? ? ? ? ? ? 代碼驗證通過,效果如下:


? ? ? ? ? ??以下代碼生成3D圖表。

from openpyxl import Workbook from openpyxl.chart import (Reference,Series,BarChart3D, )wb = Workbook() ws = wb.activerows = [(None, 2013, 2014),("Apples", 5, 4),("Oranges", 6, 2),("Pears", 8, 3) ]for row in rows:ws.append(row)data = Reference(ws, min_col=2, min_row=1, max_col=3, max_row=4) titles = Reference(ws, min_col=1, min_row=2, max_row=4) chart = BarChart3D() chart.title = "3D Bar Chart" chart.add_data(data=data, titles_from_data=True) chart.set_categories(titles)ws.add_chart(chart, "E5") wb.save("bar3d.xlsx")? ? ? ? ? ? ?代碼驗證通過,效果如下:


總結

以上是生活随笔為你收集整理的如何使用python的openpyxl进行强大的图表处理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。