这款工具可以轻松让 Matplotlib 绘制精美漂亮的表格
大家好,matplotlib作為數(shù)據(jù)可視化的強力工具,可以幫助我們自由創(chuàng)作各式各樣的數(shù)據(jù)可視化作品,其中matplotlib.pyplot.table模塊就專門用于繪制 表格,但是由于參數(shù)復雜,且默認樣式單一簡陋,想基于它繪制出美觀的表格需要花費不少功夫。
而我最近發(fā)現(xiàn)的一個基于matplotlib的第三方庫plottable,用它來生成數(shù)據(jù)表格圖既簡單又美觀,今天的文章中費老師我就來帶大家學習它的常用方法😎~
文章目錄
- 技術(shù)交流
- 基于plottable繪制漂亮的表格
- 從簡單例子出發(fā)
- plottable的常用方法
- 1 控制表格奇數(shù)偶數(shù)行底色
- 2 控制表頭單元格與數(shù)據(jù)單元格樣式
- 3 調(diào)節(jié)單元格文字樣式
- 4 配置行分割線
- 5 基于ColDef的列樣式細粒度設(shè)置
技術(shù)交流
技術(shù)要學會分享、交流,不建議閉門造車。
本文技術(shù)由粉絲群小伙伴推薦分享匯總。有趣使用工具、源碼、數(shù)據(jù)、技術(shù)交流提升,均可加交流群獲取,群友已超過3000人,添加時最好的備注方式為:來源+興趣方向,方便找到志同道合的朋友。
方式①、添加微信號:dkl88191,備注:來自CSDN +技術(shù)交流
方式②、微信搜索公眾號:Python學習與數(shù)據(jù)挖掘,后臺回復:加群
基于plottable繪制漂亮的表格
使用pip install plottable完成安裝后,我們先從一個簡單的例子了解其基礎(chǔ)的使用方式:
從簡單例子出發(fā)
plottable的基礎(chǔ)使用很簡單,在已有數(shù)據(jù)框的基礎(chǔ)上,直接調(diào)用plottable中的Table模塊即可:
渲染出的表格圖如下:
plottable的常用方法
了解到plottable的基礎(chǔ)用法后,接下來我們來學習如何添加一些常用參數(shù)來對表格進行美化:
1 控制表格奇數(shù)偶數(shù)行底色
通過在Table()中設(shè)置參數(shù)odd_row_color和even_row_color,我們可以傳入matplotlib中合法的色彩值進行表格奇數(shù)偶數(shù)行底色的設(shè)置:
2 控制表頭單元格與數(shù)據(jù)單元格樣式
通過Table()中的參數(shù)col_label_cell_kw、cell_kw,我們可以分別對表頭區(qū)域單元格、數(shù)據(jù)區(qū)域單元格進行樣式設(shè)置,接受matplotlib.patches.Rectangle全部可用參數(shù),例如:
3 調(diào)節(jié)單元格文字樣式
通過參數(shù)textprops我們可以對全部單元格的文字樣式進行控制:
4 配置行分割線
通過bool型參數(shù)col_label_divider、footer_divider、row_dividers可以分別設(shè)置是否為表頭、表格尾部、數(shù)據(jù)行繪制分割線:
而通過參數(shù)col_label_divider_kw、footer_divider_kw、row_divider_kw則可以分別控制各個部分分割線的樣式,支持plt.plot中全部參數(shù):
5 基于ColDef的列樣式細粒度設(shè)置
plottable中最強大的地方在于,其通過配置由plottable.ColDef對象列表構(gòu)成的column_definitions參數(shù),可細粒度地對每一列進行自由的樣式定義,其中每個ColDef()對象通過參數(shù)name與列名進行對應,常見的用法有:
- 分別設(shè)置不同字段的寬度比例系數(shù)
以每列的默認寬度為1,可以分別為不同列調(diào)整寬度:
- 分別設(shè)置不同字段的文本對齊方式
每個ColDef對象都可設(shè)置textprops參數(shù),基于此可以實現(xiàn)為不同字段定義水平對齊方式:
- 分別為不同字段設(shè)置數(shù)值色彩映射
通過為ColDef設(shè)置參數(shù)cmap、text_cmap,我們可以分別基于對應列的數(shù)值,對其單元格底色或字體顏色進行值映射:
- 為字段創(chuàng)建分組展示
通過為若干個ColDef設(shè)置相同的group參數(shù),我們可以為具有相同group參數(shù)的字段添加分組標識:
- 為指定字段繪制列邊框
通過為ColDef設(shè)置參數(shù)border,我們可以決定如何繪制不同字段的列邊框:
除了本文所述的部分功能外,plottable還有很多高級進階的使用方法,譬如單元格圖片渲染、自定義單元格繪制內(nèi)容等,下面的幾個例子就是基于plottable創(chuàng)作的:
https://plottable.readthedocs.io/en/latest/example_notebooks/wwc_example.html
https://plottable.readthedocs.io/en/latest/example_notebooks/bohndesliga_table.html
https://plottable.readthedocs.io/en/latest/example_notebooks/plot_example.html
https://plottable.readthedocs.io/en/latest/example_notebooks/heatmap.html
更多用法請移步官網(wǎng)https://plottable.readthedocs.io/。
以上就是本文的全部內(nèi)容,歡迎在評論區(qū)與我進行討論~
總結(jié)
以上是生活随笔為你收集整理的这款工具可以轻松让 Matplotlib 绘制精美漂亮的表格的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我从外包辞职了,10000小时后,走进字
- 下一篇: html固定单元格纵横比,HTML /