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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

DataFrame表样式设置(二)

發布時間:2023/12/19 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 DataFrame表样式设置(二) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

總第138篇/張俊紅

在DataFrame樣式表設置的第一節DataFrame表樣式設置(一)中我們講了字體相關的一些設置,這一節我們講一下,對齊方式、數字顯示、條件格式相關的一些設置。

1.對齊方式

對齊方式主要有兩種,一種是水平方向對齊,一種是垂直方向對齊。

1.1水平方向對齊

關于水平方向對齊情況使用的是horizontal_alignment參數,主要有如下幾個參數值可選:

general?=?'general'?#一般 left?=?'left'?#左對齊 center?=?'center'?#居中對齊 right?=?'right'?#右對齊 fill?=?'fill'?#填滿單元格對齊 justify?=?'justify'?#兩端對齊 center_continuous?=?'centerContinuous' distributed?=?'distributed'?#分散對齊#注意區分兩端對齊和分散對齊

我們把col_1列設置成左對齊,col_2列設置成右對齊,col_3列設置成居中對齊,實現代碼如下:

sf.apply_column_style(cols_to_style=["col_1"],?styler_obj=Styler(horizontal_alignment="left"),style_header=True) sf.apply_column_style(cols_to_style=["col_2"],?styler_obj=Styler(horizontal_alignment="right"),style_header=True) sf.apply_column_style(cols_to_style=["col_3"],?styler_obj=Styler(horizontal_alignment="center"),style_header=True) ew?=?StyleFrame.ExcelWriter(r'my_excel.xlsx') sf.to_excel(ew) ew.save()

最后效果如下:

1.2垂直方向對齊

垂直方向對齊和水平方向對齊的原理一樣,關于垂直對齊使用的是vertical_alignment參數,主要有如下幾個參數值可選:

top?=?'top'?#靠上對齊 center?=?'center'?#靠中對齊 bottom?=?'bottom'?#靠下對齊 justify?=?'justify'?#兩端對齊 distributed?=?'distributed'?#分散對齊

2.數字顯示

我們知道一個數字有不同的表現形式,可以是小數點也可以是百分數,可以設置保留兩位小數點還可以設置保留三位小數點。我們要想設置數字的這些顯示形式,需要用到number_format參數,主要有如下幾個參數值可選:

general?=?'General'?#對應Excel中的常規 general_integer?=?'0'?#不保留小數點? general_float?=?'0.00'?#保留兩位小數點 percent?=?'0.0%'?#百分數 thousands_comma_sep?=?'#,##0'?#千位分隔樣式 date?=?'DD/MM/YY'?#年月日 time_24_hours?=?'HH:MM'?#小時分鐘 time_24_hours_with_seconds?=?'HH:MM:SS'?#小時分鐘秒 time_12_hours?=?'h:MM?AM/PM'?#12小時分鐘?上下午區分 time_12_hours_with_seconds?=?'h:MM:SS?AM/PM'?#12小時分鐘秒?上下午區分 date_time?=?'DD/MM/YY?HH:MM'?#年月日時分 date_time_with_seconds?=?'DD/MM/YY?HH:MM:SS'?#年月日時分秒

我們把col_1列設置成常規格式,col_2列設置成保留3位小數點,col_3列設置成百分數格式,實現代碼如下:

sf.apply_column_style(cols_to_style=["col_1"],?styler_obj=Styler(number_format="0"),style_header=True) sf.apply_column_style(cols_to_style=["col_2"],?styler_obj=Styler(number_format="0.000"),style_header=True) sf.apply_column_style(cols_to_style=["col_3"],?styler_obj=Styler(number_format="0.0%"),style_header=True) ew?=?StyleFrame.ExcelWriter(r'my_excel.xlsx') sf.to_excel(ew) ew.save()

最后效果如下:

3.條件格式

條件格式主要將滿足條件的某些值重點突出顯示出來,條件格式主要用在色階顯示中,可選的條件如下:

num?=?'num'?#根據具體數值 percent?=?'percent'?#根據百分數 max?=?'max'?#根據最大值 min?=?'min'?#根據最小值 formula?=?'formula'?#根據公式 percentile?=?'percentile'?#根據分位數

色階調整需要用到add_color_scale_conditional_formatting方法。

4.行寬列高設置

4.1設置列寬

設置列寬的時候,我們可以將整個表中所有列設置成一樣的寬度,也可以不同列的列寬是不一樣的。設置列寬不是通過設置Styler來設置的,而是在sf表上直接調用set_column_width和set_column_width_dict方法即可。

我們把整個表列寬都設置成10,實現代碼如下:

sf.set_column_width(columns?=?["col_1","col_2","col_3"],width=10) ew?=?StyleFrame.ExcelWriter(r'my_excel.xlsx') sf.to_excel(ew) ew.save()

最后效果如下:

我們把col_1列列寬設置成10,col_2列列寬設置成20,col_3列列寬設置成30,實現代碼如下:

sf.set_column_width_dict(col_width_dict?=?{"col_1":10,"col_2":20,"col_3":30}) ew?=?StyleFrame.ExcelWriter(r'my_excel.xlsx') sf.to_excel(ew) ew.save()

最后效果如下:

4.2設置行高

設置列寬與行高的原理是一樣的,使用的方法是set_row_height和set_row_height_dict。

5.讀取本地表

讀取本地表就是我們可將本地的Excel文件讀取進來,然后對其設置樣式,也可以將本地Excel文件的樣式讀取進來。讀取文件用到的方法是read_excel。

read_excel有如下參數:

參數說明
path待讀取文件路徑
sheet_name要讀取文件的sheet名
read_style是否讀取文件表中已有的樣式,默認是False
use_openpyxl_styles是使用 Openpyxl的風格,還是使用Styler風格,默認False,即使用Styler風格
read_comments是否讀取批注,默認Fasle

需要注意的一點是,讀取進來的本地表不可以進行預覽,即你在Python里面是看不到長什么樣子的。讀取文件實例如下:

from?StyleFrame?import?StyleFrame sf=StyleFrame.read_excel(r"C:\Users\my_excel.xlsx") sf------- <StyleFrame.style_frame.StyleFrame?at?0x287b4eca90>

6.保存到本地

將文件格式設置好了,我們就可以將文件導出到本地進行保存,保存文件用到的方法是to_excel。

to_excel有如下參數:

參數說明
excel_writer輸出文件路徑
sheet_name輸出文件sheet名
allow_protection是否受保護,默認是False
right_to_left使sheet從右到左排
columns_to_hide要隱藏的列名,以列表傳入
row_to_add_filters要過濾哪些行,傳入行索引即可
columns_and_rows_to_freeze要凍結的窗口,如果輸入"C3",則會把A、B列和1、2行凍結
best_fit傳入列名,會根據列寬自動調節字體大小

總結

以上是生活随笔為你收集整理的DataFrame表样式设置(二)的全部內容,希望文章能夠幫你解決所遇到的問題。

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