cambiar el tamaño de la ventana de salida del cuaderno ipython


111

Por defecto, la salida del cuaderno ipython está limitada a una pequeña ventana secundaria en la parte inferior. Esto nos obliga a usar una barra de desplazamiento separada que viene con la ventana de salida, cuando la salida es grande.

¿Alguna opción de configuración para que no tenga un tamaño limitado, sino que funcione tan alto como la salida real? ¿O la opción de cambiar su tamaño una vez que se crea?

Respuestas:


9

Consulte la extensión de desplazamiento automático de jupyter (parte de jupyter_contrib_nbextensions) , que le permite seleccionar cuándo la salida comienza a desplazarse en un menú desplegable (puede configurarlo para que nunca se desplace). Sin embargo, la API utilizada no es compatible oficialmente, por lo que puede romperse en cualquier momento.


¡Gracias Matt! ¿Como lo uso?
nom-mon-ir

1
clone repo en el lugar correcto en su perfil de ipython. (cf readme) copie custom.example.js a custom.js y descomente require ('custom / autoscroll.js') en él. Reinicie IPython.
Matt

236

Puede alternar la ventana de desplazamiento en el menú principal del cuaderno

Celda -> Salidas de corriente -> Alternar desplazamiento


23
O (Celda -> Todos los resultados -> Alternar desplazamiento)
aquirdturtle

alguna forma de hacer esto por celda? Por ejemplo, una celda con mucho contenido json quiere desplazarse, pero una celda con salida de imagen no quiere desplazarse.
marrón

1
Genial, también si se está desplazando, con solo hacer clic en el lado izquierdo de la salida se expandirá y no se desplazará. :-)
user1953366

1
Esta debería ser la respuesta aceptada. Es mucho más actual que la respuesta aceptada y funciona de maravilla.
Sean McCarthy

45

Anexo # 2: Este comentario: https://github.com/ipython/ipython/issues/2172#issuecomment-53708976 indica cómo puede aumentar el tamaño máximo de las celdas de salida. Ejecute el siguiente código en el cuaderno:

%%javascript
IPython.OutputArea.auto_scroll_threshold = 9999;

No parece funcionar. En la consola me sale: accessing OutputArea is deprecated. Use require("notebook/js/outputarea").OutputArea. Poner eso en la consola demuestra que es una función.
brócoli

No funcionó para mí, posiblemente porque mi salida está generada por Javascript.
Osa

2
no funciona. la salida después de ejecutar una celda todavía está en un área desplazable. En mi caso, de repente, ipython notebook cambia a paneles desplazables para ciertas salidas, mientras que antes solían ser "normales". Muy enigmático ...
user989762

22

Simplemente coloqué el cursor en el cuadro gris al lado de la salida, hice clic y luego se mostró toda la salida.


Vaya, esta fue una solución tan simple. ¿Por qué se necesitaba alguna de las otras "soluciones" publicadas?
Rafael_Espericueta

15

Esto funcionó para mí en Chrome. Ejecútelo en una celda separada. Elija la altura máxima que desea mostrar sin desplazarse.

%%html
<style>
.output_wrapper, .output {
    height:auto !important;
    max-height:1000px;  /* your desired max-height here */
}
.output_scroll {
    box-shadow:none !important;
    webkit-box-shadow:none !important;
}
</style>

Aún obtendrá barras de desplazamiento si el contenido excede la altura máxima. Sin embargo, no habrá una caja de sombra. Simplemente aumente la altura máxima aún más si realmente no quiere desplazarse en absoluto.


Excelente. Esta pieza de código funcionó. Es extraño que esta no sea una configuración documentada de ipython / jupyter notebook.
user989762

Prefiero esto a agregar una extensión. También utilicé este método para formatear el resto de mi salida. ¡Gracias, @ broccoli2000!
hyperGeoMetric

No sabía que podía hacer esto ... un poco hacky, pero también parece que el entorno de Jupyter en general. ¡Gracias!
Ezekiel Victor

11

Para cambiar el tamaño de la altura de la salida desplazable, hago lo siguiente (puede cambiar 44em):

from IPython.core.display import display, HTML
display(HTML("<style>div.output_scroll { height: 44em; }</style>"))

1
Esto es TAN INCREÍBLE y todavía funciona con Jupyter 1.0+
rjurney

2

Para un iplot de plot.ly, tuve que agregar lo siguiente para ver cualquier cambio (cambió toda la salida)

%%html
<style>
.python-iframe > iframe {
  height:1000px !important;
}
</style>

0

Probé todas las opciones anteriores y ninguna funcionó. Así es como me deshice de la celda de desplazamiento. Haga clic con el botón derecho en la celda y haga clic en "deshabilitar el desplazamiento de las salidas" . Sé que esto no cambia el tamaño de la celda de desplazamiento, pero hace que mi código sea más legible ya que las celdas de desplazamiento son muy pequeñas (al menos para mí).


-1

En JupyterLab , puede hacer clic derecho y elegir: Crear nueva vista para salida .

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.