如何在浏览器中增加Jupyter/ipython笔记本的单元格宽度?

vgo*_*ani 296 python ipython ipython-notebook jupyter jupyter-notebook

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

谢谢!


编辑:5/2017

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

这个命令:

jt -t oceans16 -f roboto -fs 12 -cellw 100%
Run Code Online (Sandbox Code Playgroud)

使用漂亮的主题将宽度设置为100%.

jji*_*ing 485

如果您不想更改默认设置,并且只想更改当前正在处理的笔记本的宽度,则可以在单元格中输入以下内容:

from IPython.core.display import display, HTML
display(HTML("<style>.container { width:100% !important; }</style>"))
Run Code Online (Sandbox Code Playgroud)

  • 这改变了我的生活 (42认同)
  • 这个解决方案对我有用!我没有安装任何lib或包来使用它. (12认同)
  • 尼斯.这看起来只会更改代码/降价单元格.有没有办法让它做输出单元? (8认同)
  • 添加 `display(HTML("&lt;style&gt;.output_result { max-width:100% !important; }&lt;/style&gt;"))` 来更改输出单元格宽度! (5认同)
  • 霍莉·莫莉,这让我的生活变得更好......非常感谢!已经厌倦了在拥有 2k 30'' 显示器的情况下查看那个螺丝固定的 600px 宽度的盒子! (4认同)
  • @becko 根据 [julia discourse](https://discourse.julialang.org/t/widen-display-in-ijulia-jupyter-notebook/12470/4?u=liso) 这有效:`display("text/ html", "&lt;style&gt;.container { width:100% !important; }&lt;/style&gt;")` (3认同)
  • 我正在为 Julia 使用 Jupyter。你知道在这种情况下我需要什么吗? (2认同)
  • @onofricamila 这就是原因,是的。但是 `display(HTML("&lt;style&gt;.container { max-height:100% !important; }&lt;/style&gt;"))` **对我不起作用**。 (2认同)

Ger*_*nuk 196

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

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

.container { width:100% !important; }
Run Code Online (Sandbox Code Playgroud)

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

  • 启动IPython 4.1自定义文件夹位置已更改为`〜/ .jupyter/custom /`. (13认同)
  • 这些小小的信息片段应该贴在某个地方,再次感谢! (5认同)
  • 我不得不重新启动Jupyter笔记本(4.1.0)才能正常工作.我把上面的css放在`〜/ .jupyter/custom/custom.css`中 (5认同)
  • 100%看起来不太好,我把它改成了90% (5认同)
  • 这非常有用 (4认同)
  • 如果重新启动笔记本后这不起作用,请尝试重新启动浏览器,如果仍然不行,请尝试清除 cookie。那对我有用! (2认同)

jvd*_*d10 66

为了使这与jupyter(版本4.0.6)一起使用,我创建了~/.jupyter/custom/custom.css包含:

/* Make the notebook cells take almost all available width */
.container {
    width: 99% !important;
}   

/* Prevent the edit cell highlight box from getting clipped;
 * important so that it also works when cell is in edit mode*/
div.cell.selected {
    border-left-width: 1px !important;
}
Run Code Online (Sandbox Code Playgroud)

  • 尝试运行`jupyter --config-dir`,然后在命令返回的任何位置创建`custom\custom.css`. (5认同)

Ili*_*hev 23

对于笔记本 7,您可以使用:

from IPython.display import display, HTML
display(HTML("<style>:root { --jp-notebook-max-width: 100% !important; }</style>"))
Run Code Online (Sandbox Code Playgroud)


Tha*_*wda 20

是时候使用jupyterlab了

最后,对笔记本电脑进行了急需的升级.默认情况下,它使用窗口的整个宽度,就像任何其他完整的原生IDE一样.

你所要做的就是:

pip install jupyterlab
# if you use conda
conda install -c conda-forge jupyterlab
# to run 
jupyter lab    # instead of jupyter notebook
Run Code Online (Sandbox Code Playgroud)

这是来自blog.Jupyter.org的截图

  • JupyterLab 仍处于测试阶段,并且与常规笔记本(按设计)有一些回归。一个值得注意的是默认情况下禁止使用 JS,并且每个小的 JS 可视化都需要扩展 (3认同)
  • 我已经努力了一个小时让 jupyter 实验室工作。起初没有显示图形(pyplot / plotly)。文档没有提到您必须为此安装扩展。试图安装 plotly 扩展。发现你需要nodejs。两者都安装了,现在我收到“找不到模板:“index.html””消息。在这一点上我放弃了,我继续使用 jupyter notebook。 (3认同)
  • 如何更改 Jupyter Lab 单元格的宽度? (2认同)
  • @CiprianTomoiagă JupyterLab 中不再禁止 JS 执行(实际上已经有一段时间了)。 (2认同)

Ian*_*Ian 13

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

特别是,创建一个包含的文件

<style>
    div.cell{
        width:100%;
        margin-left:1%;
        margin-right:auto;
    }
</style>
Run Code Online (Sandbox Code Playgroud)

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

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

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

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


Gun*_*ach 11

我在新安装后通常做的是修改存储所有视觉样式的主css文件.我使用Miniconda,但位置与其他人相似C:\Miniconda3\Lib\site-packages\notebook\static\style\style.min.css

对于某些屏幕,这些分辨率是不同的并且大于1.为了安全起见我将所有内容更改为98%所以如果我从笔记本电脑上的外部屏幕断开连接,我仍然有98%的屏幕宽度.

然后用98%的屏幕宽度替换1140px.

@media (min-width: 1200px) {
  .container {
    width: 1140px;
  }
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

编辑后

@media (min-width: 1200px) {
  .container {
    width: 98%;
  }
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述 保存并重新启动笔记本


更新

最近在安装的环境中不得不使用更广泛的Jupyter单元,这使我回到这里并提醒自己.

如果您需要在虚拟环境中执行此操作,则安装了jupyter.您可以在此子目录中找到css文件

env/lib/python3.6/site-packages/notebook/static/style/stye.min.css
Run Code Online (Sandbox Code Playgroud)

  • 这太棒了!它很简单,并且完全满足需要。 (4认同)

vol*_*myr 8

(截至2018年,我建议尝试使用JupyterHub/JupyterLab.它使用显示器的全宽.如果这不是一个选项,可能因为您正在使用基于云的Jupyter-as-a-service提供程序之一,继续阅读)

(时尚被指控窃取用户数据,我转而使用Stylus插件代替)

我建议使用Stylish Browser Plugin.这样,您可以覆盖所有笔记本的css,而无需向笔记本添加任何代码.我们不喜欢在.ipython/profile_default中更改配置,因为我们为整个团队运行共享Jupyter服务器,而width是用户首选项.

我专门为垂直方向的高分辨率屏幕制作了一种风格,它使细胞更宽,并在底部增加了一些空白空间,因此您可以将最后一个细胞定位在屏幕的中心. https://userstyles.org/styles/131230/jupyter-wide 当然,如果您有不同的布局,或者您最后不想要额外的空白空间,您可以根据自己的喜好修改我的CSS.

最后但同样重要的是,Stylish是您工具集中的绝佳工具,因为您可以根据自己的喜好轻松自定义其他网站/工具(例如Jira,Podio,Slack等)

@media (min-width: 1140px) {
  .container {
    width: 1130px;
  }
}

.end_space {
  height: 800px;
}
Run Code Online (Sandbox Code Playgroud)

  • 时尚被删除,因为它窃取了用户的浏览记录:https://gadgets.ndtv.com/internet/news/google-mozilla-remove-stylish-browser-chrome-firefox-extension-1878558 (2认同)

biz*_*izi 7

对于Chrome用户,我建议使用Stylebot,它可以让您覆盖任何页面上的所有CSS,也可以搜索和安装其他共享自定义CSS。但是,出于我们的目的,我们不需要任何高级主题。打开Stylebot,更改为Edit CSS。Jupyter捕获了一些击键,因此您将无法在其中键入以下代码。只需复制和粘贴,或者仅编辑即可:

#notebook-container.container {
    width: 90%;
}
Run Code Online (Sandbox Code Playgroud)

根据需要更改宽度,我发现90%的外观比100%的外观好。但这完全取决于您。


Aar*_*nDT 6

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

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>"))
Run Code Online (Sandbox Code Playgroud)