我想在浏览器中增加ipython笔记本的宽度。我有一个高分辨率的屏幕,我想扩大单元格的宽度/大小,以利用这个额外的空间。

谢谢!


编辑/回答:2017年5月

我现在使用jupyterthemes: https://github.com/dunovank/jupyter-themes

还有这命令:

jt -t oceans16 -f roboto -fs 12 -cellw 100%

这设置宽度为100%与一个漂亮的主题。


当前回答

对于Chrome用户,我推荐Stylebot,它可以让你覆盖任何页面上的任何CSS,也可以让你搜索和安装其他共享自定义CSS。然而,出于我们的目的,我们不需要任何提前的主题。打开Stylebot,更改为编辑CSS。Jupyter捕获了一些击键,因此您将无法键入下面的代码。只需复制粘贴,或只需你的编辑器:

#notebook-container.container {
    width: 90%;
}

改变宽度随你喜欢,我发现90%看起来比100%更好。但这完全取决于你的眼睛。

其他回答

我尝试了所有的方法,没有什么对我有用,我最终使用如下HTML显示我的数据帧

from IPython.display import HTML    
HTML (pd.to_html())

您可以通过从任何单元格调用样式表来设置笔记本的CSS。举个例子,看看Navier Stokes课程的12步。

特别是,创建一个包含

<style>
    div.cell{
        width:100%;
        margin-left:1%;
        margin-right:auto;
    }
</style>

应该能给你一个起点。然而,可能还需要调整例如div.text_cell_render来处理markdown以及代码单元格。

如果该文件是custom.css,则添加包含以下内容的单元格:

from IPython.core.display import HTML
def css_styling():
    styles = open("custom.css", "r").read()
    return HTML(styles)
css_styling()

这将应用所有样式,特别是改变单元格宽度。

这是我最终使用的代码。它将输入和输出单元格向左和向右拉伸。注意,输入/输出数字指示将消失:

from IPython.core.display import display, HTML
display(HTML("<style>.container { width:100% !important; }</style>"))
display(HTML("<style>.output_result { max-width:100% !important; }</style>"))
display(HTML("<style>.prompt { display:none !important; }</style>"))

div.cell解决方案实际上在我的IPython上不起作用,但幸运的是,有人为新的IPython提出了一个有效的解决方案:

创建一个包含内容的文件~/.ipython/profile_default/static/custom/custom.css (iPython)或~/.jupyter/custom/custom.css (Jupyter)

.container { width:100% !important; }

然后重新启动iPython/Jupyter笔记本。注意,这将影响所有笔记本电脑。

请注意,如果您使用旧的方法执行此操作,现在将得到一个弃用警告。这使用了较新的子模块命名:

from IPython.display import HTML

HTML("<style>.container { width:100% !important; }</style>")