pandas 将样式化 Dataframe 导出到映像时出错,“SyntaxError:不是PNG文件”使用dataframe_image

dhxwm5r4  于 2023-01-19  发布在  其他
关注(0)|答案(2)|浏览(352)

我使用dataframe_image已经有一段时间了,到目前为止效果很好。上周,突然之间,我所有包含方法dfi. export()的代码都停止工作了,并且输出了这个错误

raise SyntaxError("not a PNG file")

File <string>
SyntaxError: not a PNG file

我可以导出传递参数table_conversion='matplotlib'的图像,但它们没有样式...
这是我的代码:

now = str(datetime.now())
filename = ("Extracciones-"+now[0:10]+".png")

df_styled = DATAFINAL.reset_index(drop=True).style.apply(highlight_rows, axis=1)

dfi.export(df_styled, filename,max_rows=-1)

IMAGEN = Image.open(filename)
IMAGEN.show()

有什么线索可以解释为什么它突然停止工作吗?或者有什么想法可以将 Dataframe 导出为图像(不使用html)吗?
这些是我以前得到的输出:fully styled dataframe images
这是only thing I can get right now
先谢谢你

4urapxun

4urapxun1#

我也有同样的问题,我们终于解决了看起来1/14的新版本dataframe_image在以前的版本上有一些问题。我们升级了包,问题得到了解决。

pip install -u dataframe_image
olhwl3o2

olhwl3o22#

dataframe_image依赖于Chrome,最近的Chrome更新(可能是2013年1月10日的v109)破坏了dataframe_image. v0.1.5 was released on 2023-01-14以修复此问题。

pip install --upgrade dataframe_image
pip show dataframe_image

现在的版本应该是v0.1.5或更高版本,这应该可以解决问题。
一些用户报告说升级后仍然有错误。这可能是因为在错误的目录中升级包(由于python,pip,virtual envs等的多次安装)。检查代码使用的dataframe_image的实际版本的可靠方法是将以下调试代码添加到python代码的顶部:

import pandas as pd
import dataframe_image as dfi
from importlib.metadata import version

print(version('dataframe_image'))

df = pd.DataFrame({'x':[1,2]})
dfi.export(df, 'out.png')

exit()

同时在Chrome浏览器中检查chrome://version/

相关问题