【问题标题】:IPython Notebook & Pandas: How does pandas produce html table?IPython Notebook & Pandas:pandas 如何生成 html 表格?
【发布时间】:2016-02-17 05:42:58
【问题描述】:

pandasdataframe 的输出是HTML table,我想知道它是如何将html 生成到Ipython Notebook 中的?

<div class="output_subarea output_html rendered_html output_result">
  <div>
   <table class="dataframe" border="1">
     <thead>
       <tr style="text-align: right">

因为我也想用一些 html 包装我的输出,所以我想知道如何。 (Ipython Notebook & Matplotlib: How to wrap a plot within a html div?)

我现在正在挖掘源代码:https://github.com/pydata/pandas/blob/2d51b33066e5991913dcba2cfb93d2112a2e8a8f/pandas/core/format.py

【问题讨论】:

    标签: python pandas ipython jupyter


    【解决方案1】:

    在 IPython 中,您可以通过导入 ipython 的显示模块来显示任意 HTML。 Pandas 可以将DataFrame 转换为 html,然后您可以将更新应用到其中,例如:

    import pandas as pd
    from IPython import display
    df = pd.DataFrame(...)
    display.HTML(df.to_html())
    

    应该显示与上面相同的 html 表格。

    DataFrame.to_html() 返回一个 http 字符串,因此您可以进行简单的字符串操作来包装您的文本:

    display.HTML('<div style="visibility:hidden">'+df.to_html()+'</div>')
    

    会隐藏表格。

    【讨论】:

    • 总而言之,它只产生string,然后用display 格式化为HTML。这回答了这个问题。但我的担忧(用html 包裹plot)仍然没有得到答复,因为我无法在字符串中生成图像。真是太可惜了……
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-03-04
    • 1970-01-01
    • 1970-01-01
    • 2014-04-04
    • 1970-01-01
    • 2014-07-15
    • 1970-01-01
    相关资源
    最近更新 更多