包含excel圖表python風格的詞條

本文目錄一覽:

python可以畫出excel的圖嗎

本文主要闡述如何使用python從excel讀取數據,並用matplotlib繪製成二維圖像。

主要知識點為:

使用xlrd擴展包讀取excel數據

使用matplotlib繪製二維圖像

美化圖像,添加標註,注釋,顯示Latex風格公式,坐標點處透明化處理等技巧

適合人群:適合具有Python基礎的用戶,對於需要書寫實驗報告,學位論文,發表文章,做PPT報告的學員具有較大價值。

開發準備

打開Xfce終端,下載並安裝的相關依賴 。

$ sudo apt-get update

$ sudo apt-get install python-dev

$ sudo pip install numpy

$ sudo apt-get install python-matplotlib

$ sudo pip install xlrd

$ sudo apt-get install python-sip

$ sudo apt-get install libqt4-dev

$ sudo apt-get install python-qt4 python-qt4-dev pyqt4-dev-tools qt4-dev-tools

遇到是否安裝的詢問時,輸入y,按回車鍵繼續安裝。

實驗步驟

1.繪製一個簡單圖像,測試擴展包安裝是否正常。

安裝完成matplotlib後,運行一個小程序測試其是否正常。我們來繪製一個非常簡單的正弦函數。

在學習過程中有什麼不懂得可以加我的

python學習資源qun,855-408-893

群里有不錯的學習視頻教程、開發工具與電子書籍。

與你分享python企業當下人才需求及怎麼從零基礎學習好python,和學習什麼內容

import numpy as np

import matplotlib.pyplot as plt

x = np.linspace(0, 10, 500)

dashes = [10, 5, 100, 5] # 10 points on, 5 off, 100 on, 5 off

fig, ax = plt.subplots()

line1, = ax.plot(x, np.sin(x), 『–『, linewidth=2,

label=『Dashes set retroactively『)

line1.set_dashes(dashes)

line2, = ax.plot(x, -1 * np.sin(x), dashes=[30, 5, 10, 5],

label=『Dashes set proactively『)

ax.legend(loc=『lower right『)

plt.show()

如果一切正常,應該得到如下顯示的圖片:

2 測試xlrd擴展包

從excel中讀取數據的過程比較簡單,首先從xlrd包導入open_workbook,然後打開excel文件,把每個sheet里的每一行每一列數據都讀取出來即可。很明顯,這是個循環過程。

from xlrd import open_workbook

x_data1=[]

y_data1=[]

wb = open_workbook(『phase_detector.xlsx『)

for s in wb.sheets():

print 『Sheet:『,s.name

for row in range(s.nrows):

print 『the row is:『,row

values = []

for col in range(s.ncols):

values.append(s.cell(row,col).value)

print values

x_data1.append(values[0])

y_data1.append(values[1])

如果安裝包沒有問題,這段代碼應該能列印出excel表中的數據內容。解釋一下 這段代碼:打開一個excel文件後,首先對文件內的sheet進行循環,這是最外層循環;在每個sheet內,進行第二次循環,行循環;在每行內,進行列循環,這是第三層循環。在最內層列循環內,取出行列值,複製到新建的values列表內,很明顯,源數據有幾列,values列表就有幾個元素。我們例子中的excel文件有兩列,分別對應「角度」和DC值。所以在列循環結束後,我們將取得的數據保存到x_data1和y_data1這兩個列表中。

Python操作Excel實現自動化報表

Python操作Excel實現自動化報表

安裝

python -m pip install xlrd xlwt xlutils。

基本用法

1.從指定文件路徑讀取excel表格,進行一定操作,然後保存到另一個excel文件:result.xlsx

import xlwt

import xlrd

from xlutils.copy import copy

import pandas as pd

from pandas import DataFrame,Series

import os

os.chdir(‘./’)

# 從指定文件路徑讀取excel表格

df = pd.read_excel(‘D:/mypaper/data/data.xlsx’)

# 查看df內容

# 根據age算出出生年份,增加一列

import datetime

import os

year = datetime.datetime.now().year#獲取當前系統時間對應的年份

df[‘birth’] = year-df[‘age’]

df.to_excel(‘result.xlsx’)#保存到當前工作目錄,可以用os.getcwd()查看

#查看下此時df的內容,可以看到已經生成了birth這一列。

2.單元格操作

# 定義方法:讀取指定目錄下Excel文件某個sheet單元格的值

def excel_read(file_path,table,x,y):

     data = xlrd.open_workbook(file_path)

     table = data.sheet_by_name(table)

     return table.cell(y,x).value

# 定義方法:單元格值及樣式

write_obj_list = []

def concat_obj(cols,rows,value):

    write_obj_list.append({‘cols’:cols,’rows’:rows,’value’:value,\

‘style’:xlwt.easyxf(‘font: name 宋體,height 280;alignment: horiz centre’)})

# 定義方法:合併單元格

def merge_unit(srows,erows,scols,ecols,value):

    write_obj_list.append({‘id’:’merge’,’srows’:srows,’erows’:erows,’scols’:scols,\

‘ecols’:ecols,’value’:value,’style’:xlwt.easyxf(‘font: name 宋體,height 280;alignment: horiz centre’)})

# 定義方法:更新excel

excel_update(file_path,write_obj_list,new_path):

    old_excel = xlrd.open_workbook(file_path, formatting_info=True)

    #管道作用

    new_excel = copy(old_excel)

    ”’

    通過get_sheet()獲取的sheet有write()方法

    ”’

    sheet1 = new_excel.get_sheet(0)

    ”’

    1代表是修改第幾個工作表裡,從0開始算是第一個。此處修改第一個工作表

    ”’

    for item in write_obj_list:

        if ‘id’ not in item.keys():

            if ‘style’ in item.keys():

                sheet1.write(item[‘rows’], item[‘cols’], item[‘value’],item[‘style’])

            else:

                sheet1.write(item[‘rows’], item[‘cols’], item[‘value’])

        else:

            if ‘style’ in item.keys():

                sheet1.write_merge(item[‘srows’],item[‘erows’],item[‘scols’], item[‘ecols’], item[‘value’],item[‘style’])

            else:

                sheet1.write_merge(item[‘srows’],item[‘erows’],item[‘scols’], item[‘ecols’], item[‘value’])

    ”’

   如果報錯 dict_items has no attributes sort

    把syle源碼中–alist.sort() 修改為—- sorted(alist) 

    一共修改2次

    ”’

    new_excel.save(file_path)

#參數詳解

# srows:合併的起始行數

# erows:合併的結束行數

# scols:合併的起始列數

# ecols:合併的結束列數 

# value:合併單元格後的填充值

# style:合併後填充風格:

#     font: name 宋體

#     height 280;

#     alignment: horiz centre

#     … 與excel操作基本保持一致

(注意:該方法僅僅是將需要直行的動作保存到一個list中,真正的動作還未執行,執行動作是發生在excel_update方法中)

最終調用excel_update方法,傳入每個單元格需要進行的操作和填充值的write_obj_list以及文件保存路徑file_path,就可以在當前工作目錄下生成想要的Excel結果文件。

注意:

1.write_obj_list支持用戶自定義

2.write_obj_list也可以是根據excel_read方法讀取現有待修改的excel文件(可以維持原有表格的格式)而生成

End

如何使用python製作excel透視曲線圖

Excel功能之強大,每個人都會用到。你還在為怎麼做數據表煩惱么。Excel高版本自帶的數據圖表可以滿足一般需求,這就是高版本的好處自帶很多實用功能減輕繁重的工作。本文就2010版本的數據視圖做個簡單的功能介紹,製作一個孩子的各科目每年學習成績曲線圖

開啟分步閱讀模式

工具材料:

excel2010

操作方法

01

數據源,先做好每年孩子各科目學習成績的記錄

02

數據透視圖,首先要選擇數據,然後點擊『插入』-》數據透視表-》數據透視圖

03

選擇必要選項,在彈出的對話框中,有兩個選項供選擇,一個是數據源(可以選擇外部數據源,默認是當前選中的數據),一個是視圖要顯示的位置,可以在當前的表中呈現,也可以在另外一個sheet中展現。一般情況下我是在當前工作表中呈現,直觀,方便。

04

報錯,如果選擇了『現有工作表』,但是『位置』里為空,這樣直接確定是會報錯的,因為你還么有選擇圖標要顯示的位置。

05

選擇需要展示的數據,剛才選擇的數據源列都在上面提現出來了,現在是要選擇數據視圖展示的內容。我們來選擇科目、時間、成績。

06

橫軸、縱軸調整,圖1位置是我們所謂的X軸,圖2是我們要顯示的幾個內容,圖3是顯示的Y軸數值。

07

選擇圖標樣式,步驟6完成之後,默認是柱狀圖,但是這個不直觀,我想要的是曲線走勢圖,所以可以改變下顯示的樣式,

08

完美走勢圖,看曲線就可以知道小朋友數學、音樂成績在不斷提高,英語成績波動不大,語文成績在下滑。

python 怎樣操作 excel 生成圖表, 求高手指點。 最好是源代碼 。

搜索下載pyExcelerator,這是一個python控制excel的庫。主要是通過EXCEL文件結構直接讀寫實現。可以操作單元格,公式,設置格式。功能強大。我下載的版本是0.6.4.1

你也可以用excel的COM介面實現。那個功能就更強了。不過COM介面找不到文檔。需要自己嘗試。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/304938.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2025-01-01 11:06
下一篇 2025-01-01 11:06

相關推薦

  • 為什麼不能用Microsoft Excel進行Python編程?

    Microsoft Excel是一個廣泛使用的數據分析工具,但是它不能直接用於Python編程。這是因為Microsoft Excel並不是一個編程工具,它的主要功能是進行數據處理…

    編程 2025-04-29
  • 基尼係數Excel計算模板

    這篇文章將介紹基尼係數Excel計算模板,為大家詳細闡述如何使用Excel進行基尼係數的計算。 一、模板下載及導入 首先需要下載基尼係數的Excel計算模板,可以在Excel中通過…

    編程 2025-04-28
  • 使用ReoGrid操作Excel的WPf應用

    本文將詳細闡述如何使用ReoGrid來操作Excel,重點介紹在WPF應用程序中使用ReoGrid的方法及注意點。 一、ReoGrid簡介 ReoGrid是一個基於.NET的開源組…

    編程 2025-04-27
  • Excel日期函數

    Excel是當前企業和個人使用非常廣泛的辦公軟體之一。其中的日期函數可以用於處理各種涉及日期和時間的任務。本文將從不同的方面介紹Excel日期函數,幫助讀者深入了解和熟練使用日期函…

    編程 2025-04-25
  • Java Excel導入導出詳解

    一、Excel文件簡介 Excel是微軟公司開發的一種電子表格程序,多用於商業、財務、科學等各種數據處理。 Excel文件通常以.xls或.xlsx格式存儲,其中.xls格式為Ex…

    編程 2025-04-25
  • Word轉Excel詳解

    一、使用Office插件 1、可以使用Office自帶的「將表格複製為Excel工作簿」插件。只需在Word中選中表格,點擊「插入」選項卡中的「對象」按鈕,在彈出的窗口中選擇「將表…

    編程 2025-04-25
  • Java Excel合併單元格

    一、介紹 Excel是微軟公司開發的一款非常流行的電子表格軟體,而Java是一門強大的編程語言。在項目中,我們可能會需要對Excel進行操作,比如合併單元格。Java提供了很多對E…

    編程 2025-04-24
  • PHP導出Excel文件

    一、PHP導出Excel文件列寬調整 當我們使用PHP導出Excel文件時,有時需要調整單元格的列寬。可以使用PHPExcel類庫中的setWidth方法來設置單元格的列寬。下面是…

    編程 2025-04-24
  • Excel 兩格內容合併一個探究

    一、合併單元格的操作方法 在Excel的操作中,我們需要對單元格進行操作。而合併單元格是其中一個常用的操作,它可以讓我們對一些數據進行整合和顯示。那麼,Excel 合併單元格的操作…

    編程 2025-04-23
  • 詳解如何讀取excel文件

    一、安裝支持庫 在Python中,我們可以使用openpyxl庫來讀取和操作Excel文件。打開終端或命令行窗口並執行以下命令安裝openpyxl庫: pip install op…

    編程 2025-04-23

發表回復

登錄後才能評論