將影象新增到 Pandas 資料框

Fariba Laiq 2022年6月13日
將影象新增到 Pandas 資料框

有時我們想建立一個由影象組成的 pandas 資料框。我們可以使用 Python Pandas 中的 HTML 模組來完成這項任務。

我們將影象的路徑轉換為 ​​HTML 標籤。然後,將資料框轉換為 HTML 表格並顯示影象。Python 有一個名為 HTML 的內建模組。我們可以在 Python 中編碼和解碼 HTML。

使用 HTML 模組在 Pandas DataFrame 中渲染影象

在以下程式碼中,我們建立了一個資料框,其中包含有關藝術家和繪畫標題的資訊。為了在這個資料框中顯示影象,我們將建立一個包含影象的路徑的列表。

我們將此列表作為列分配給資料框。我們建立了一個函式,通過將 <img src=path 連線起來,將路徑轉換為 HTML 的 img 標籤。

該函式還使用寬度屬性將影象調整為小比例。然後我們使用 to_html() 方法將 pandas 資料框轉換為 HTML 表格。

我們呼叫 HTML 方法來渲染影象。最後,我們使用 display() 方法顯示整個資料框。

示例程式碼:

#Python 3.x
import pandas as pd
from IPython.core.display import HTML
df = pd.DataFrame([['Van Gogh', 'Starry Night'],
                   ['Van Gogh', 'Sunflowers'],
                   ['Van Gogh', 'Cafe Terrace at Night']],
columns = ['Artist', 'Painting Title'])
painting_images = [
    'https://upload.wikimedia.org/wikipedia/commons/thumb/e/ea/Van_Gogh_-_Starry_Night_-_Google_Art_Project.jpg/1200px-Van_Gogh_-_Starry_Night_-_Google_Art_Project.jpg',
    'https://iiif.micr.io/TZCqF/full/1280,/0/default.jpg',
    'https://upload.wikimedia.org/wikipedia/commons/thumb/2/21/Vincent_Willem_van_Gogh_-_Cafe_Terrace_at_Night_%28Yorck%29.jpg/816px-Vincent_Willem_van_Gogh_-_Cafe_Terrace_at_Night_%28Yorck%29.jpg'
]
df['Painting']=painting_images
def to_img_tag(path):
    return '<img src="'+ path + '" width="50" >'
display(HTML(df.to_html(escape=False,formatters=dict(Painting=to_img_tag))))

輸出:

在 Pandas 資料框中新增影象

Author: Fariba Laiq
Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

相關文章 - Pandas DataFrame