首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >选择DataFrame -映像模块(将样式的DataFrame转换为图像),创建者停止了更新和支持

选择DataFrame -映像模块(将样式的DataFrame转换为图像),创建者停止了更新和支持
EN

Stack Overflow用户
提问于 2022-04-21 13:04:26
回答 1查看 1.3K关注 0票数 1

这里始终是来自社区的最好的答案,并且图像的格式是完美的,根据数据完全适合列,并且在不损失质量的情况下,指示使用dataframe-image

https://stackoverflow.com/a/65954710/11462274

https://stackoverflow.com/a/70550426/11462274

这种使用简化了,在代码中几乎没有占用任何空间,调用函数的一行就可以完成所有的工作。

正式模块页面:

https://github.com/dexplo/dataframe_image

https://pypi.org/project/dataframe-image/

在使用本模块时,将发出几条关于更改的未来警报消息,根据我的研究,代码已经过时,不再更新。如果模块被更新并且不再接受某些功能的使用,这可能会在将来造成问题。

例如:

代码语言:javascript
复制
FutureWarning: this method is deprecated in favour of `Styler.to_html()`
  html = '<div>' + obj.render() + '</div>'

我使用它在图像中保存一个样式化的DataFrame:

代码语言:javascript
复制
import pandas as pd
import dataframe_image as dfi

def csv_to_image(csv_file,name_file):
    df = pd.read_csv(csv_file)

    df = df.style.set_table_styles([dict(selector='th', props=[('text-align', 'center'),('background-color', '#40466e'),('color', 'white')])])
    df.set_properties(**{'text-align': 'center'}).hide(axis='index')
    pd.set_option('colheader_justify', 'center')

    dfi.export(df, name_file + ".png")

我想知道是否有任何模块做同样的服务,并且没有被创建的模块遗漏。

例如,我的CSV数据用于测试:

代码语言:javascript
复制
DATA,HORA,CAMPEONATO,JOGO,CANAIS
21/04/2022,"08:00 Ao vivo 77'",Liga dos Campeões Asiática,0 Shandong Taishan x 0 Lion City Sailors FC,STAR+
21/04/2022,"08:00 Ao vivo 78'",Liga dos Campeões Asiática,2 BG Pathum United x 0 United City,STAR+
21/04/2022,11:00,Liga dos Campeões Asiática,Kawasaki Frontale x Johor Darul Takzim,STAR+
21/04/2022,11:00,Liga dos Campeões Asiática,Melbourne City x Jeonnam Dragons,STAR+
21/04/2022,11:00,Liga dos Campeões Asiática,Daegu FC x Urawa Red Diamonds,STAR+
21/04/2022,14:00,LaLiga,Espanhol x Rayo Vallecano,STAR+
21/04/2022,14:00,LaLiga,Levante x Sevilla,"ESPN 4, STAR+"
21/04/2022,15:00,LaLiga,Cadiz x Athletic Bilbao,"ESPN 3, STAR+"
21/04/2022,15:00,Campeonato Equatoriano,Mushuc Runa x Macara,STAR+
21/04/2022,15:45,Campeonato Inglês,Burnley x Southampton,"ESPN 2, STAR+"
21/04/2022,16:00,Copa da Liga Argentina,Sarmiento x Defensa y Justicia,STAR+
21/04/2022,16:15,Taça de Portugal,FC Porto x Sporting,STAR+
21/04/2022,16:30,LaLiga,Real Sociedad x Barcelona,"ESPN, STAR+"
21/04/2022,16:30,Brasileirão Série B,Grêmio x Guarani,PREMIERE FC
21/04/2022,16:30,Campeonato Pernambucano,Náutico x Retrô FC Brasil,"GLOBO(PE), PREMIERE 2"
21/04/2022,17:00,Campeonato Piauiense,Parnahyba x Fluminense PI,ELEVENSPORTS.COM
21/04/2022,17:30,Campeonato Equatoriano,SD Aucas x U Católica,STAR+
21/04/2022,19:00,Brasileirão Série B,Londrina x Grêmio Novorizontino,"PREMIERE FC, SPORTV"
21/04/2022,19:00,Campeonato Acreano,Rio Branco AC x Galvez AC,ELEVENSPORTS.COM
21/04/2022,19:00,Campeonato Capixaba,Serra x Real Noroeste Capixaba,"TVE(ES), YOUTUBE(TVE ES)"
21/04/2022,20:00,Campeonato Equatoriano,Cumbaya FC x Emelec,STAR+
21/04/2022,21:30,Copa do Brasil,Atlético GO x Cuiabá EC,"SPORTV, PREMIERE FC"

最后的结果是:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-22 12:19:56

您可以使用pandas .to_html(),然后使用imgkit写入文件。

代码语言:javascript
复制
import pandas as pd
import imgkit

def csv_to_image(csv_file,name_file):
    df = pd.read_csv(csv_file)

    df = df.style.set_table_styles([dict(selector='th', props=[('text-align', 'center'),('background-color', '#40466e'),('color', 'white')])])
    df.set_properties(**{'text-align': 'center'}).hide(axis='index')
    pd.set_option('colheader_justify', 'center')

    html = df.to_html()
    imgkit.from_string(html, name_file + ".png")
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71955001

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档