Python 更改从数据帧渲染的图像的显示大小

Python 更改从数据帧渲染的图像的显示大小,python,pandas,jupyter-notebook,Python,Pandas,Jupyter Notebook,我正在渲染存储在数据帧中的numpy数组 从sklearn导入数据集 从PIL导入图像 从IPython.display导入HTML 从io导入字节io 导入base64 将matplotlib导入为mpl 从skiliage.exposure导入重缩放强度 def图像格式化程序(arr): cm=mpl.cm.get_cmap(“绿色”) i=重新缩放强度(厘米(arr)[……,:3],超出范围=(0255)).aType(np.uint8) im=Image.fromarray(i) im.

我正在渲染存储在数据帧中的numpy数组

从sklearn导入数据集
从PIL导入图像
从IPython.display导入HTML
从io导入字节io
导入base64
将matplotlib导入为mpl
从skiliage.exposure导入重缩放强度
def图像格式化程序(arr):
cm=mpl.cm.get_cmap(“绿色”)
i=重新缩放强度(厘米(arr)[……,:3],超出范围=(0255)).aType(np.uint8)
im=Image.fromarray(i)
im.缩略图((500500),Image.LANCZOS)
以BytesIO()作为缓冲区:
即时保存(缓冲区,“jpeg”)
enc=base64.b64encode(buffer.getvalue()).decode()
返回f“”
def显示_配置文件(d):
使用pd.option\u上下文(“display.max\u colwidth”,1000):
返回HTML(d.to_HTML(格式化程序=dict(img=image_格式化程序),escape=False))
digits=[np.为数据集中的x重塑(x,(8,8)).load_digits()[“data”][:5]
testdf=pd.DataFrame({“a”:[1,2,3,4,5],“b”:[10,20,30,40,50],“img”:digits})
显示配置文件(testdf)

我如何改变我的缩略图的大小,因为它们很小


我尝试更改缩略图大小,更改pandas的
max\u colwidth
选项,并向HTML
标记添加
style
选项,但没有任何效果。有什么想法吗?我是否需要更改一些隐藏的Jupyter笔记本选项?

这是您的
图像格式化程序的问题

在该函数的最后一行,而不是:

im.thumbnail((500, 500), Image.LANCZOS)
写:

im = im.resize((500,500))
整个功能应该是:

def image_formatter(arr):
    cm = mpl.cm.get_cmap("viridis")
    i = rescale_intensity(cm(arr)[...,:3], out_range=(0,255)).astype(np.uint8)
    im = Image.fromarray(i)
    im = im.resize((500,500))

尽管如此,我认为
im.resize((20,20))
将非常适合:)

np和pd的定义在哪里?如果我帮忙的话,你会这么仁慈并给予赏金吗?