Issue
I have a pandas Dataframe which also has a column with a filename of an image. How can I display the image inside of the DataFrame?
I tried the following:
import pandas as pd
from IPython.display import Image
df = pd.DataFrame(['./image01.png', './image02.png'], columns = ['Image'])
df['Image'] = Image(df['Image'])
But when I show the frame, each column only shows the to_string representation of the Image Object.
Image
0 IPython.core.display.Image object
1 IPython.core.display.Image object
Is there any solution for this?
Thanks for your help.
Solution
Instead of inserting the html code into the dataframe, I suggest to use a formatter. Unfortunately you need to set the truncation settings, so long text doesn't get truncated with "...".
import pandas as pd
from IPython.display import HTML
df = pd.DataFrame(['./image01.png', './image02.png'], columns=['Image'])
def path_to_image_html(path):
return '<img src="'+ path + '"/>'
pd.set_option('display.max_colwidth', -1)
HTML(df.to_html(escape=False, formatters={'Image': path_to_image_html}))
Answered By - Fabian Hertwig
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.