代码之家  ›  专栏  ›  技术社区  ›  Royalblue

如何在Jupyter笔记本单元中生成一个大的数字,当它输出到html时可以滚动

  •  8
  • Royalblue  · 技术社区  · 9 年前

    如您所知,当您在Jupyter笔记本单元中打印一个大表格时,无论该表格是在笔记本环境中打印还是保存到html文件中,当表格太大时,它都会自动水平或垂直滚动。

    但对于图形来说,当它太大时,它可以作为一个大表滚动,但只有当它在笔记本环境中打印时。当它被保存到html文件中时,整个图形被放入一个较小的区域,因此很难读取轴标签。

    我该怎么做?

    例如,在笔记本电脑中,如果单击图形的左边框和下边框,则会在右侧和底部显示滚动条。

    enter image description here

    但当输出到html文件时,整个图形被填充到“画布”中,如下所示:

    enter image description here

    1 回复  |  直到 7 年前
        1
  •  8
  •   heilerich    7 年前

    您有三个选项可以修改笔记本的样式。

    在代码单元中插入CSS

    如果你只想修改一个笔记本的行为,你可以在代码中注入一些CSS来定制你的风格。

    from IPython.core.display import HTML
    style = """
    <style>
    div.output_area {
        overflow-y: scroll;
    }
    div.output_area img {
        max-width: unset;
    }
    </style>
    """
    HTML(style) 
    

    自定义样式表

    如果要在全局级别上修改样式,可以在 custom/custom.css 文件(该文件可能尚不存在)。

    import jupyter_core;jupyter_core.paths.jupyter_config_dir()
    

    自定义nbconvert模板

    最后,如果您只想为HTML导出的输出设置样式,请查看 nbconvert documentation 在“自定义模板”部分中。这种方法可能是最强大的导出样式选择,但它只会影响导出的版本,而不会影响live笔记本。