I have a long Sympy expression that I'd like to get printed with a horizontal scrollbar beneath it. Is it possible to do so in Jupyter? I'm able to toggle vertical scrolling but I want it to be horizontally scrollable instead. The problem with vertical scrolling is that the output of sympy.pretty_print() gets badly distorted in my case. The output also looks ugly and the user has to scroll through the whole output unnecessarily.
- 373
- 1
- 3
- 9
3 Answers
Something similar to the np.set_printoptions(linewidth=some_large_number) and/or np.set_printoptions(threshold=some_large_number) approach can be useful but doesn't fix the problem if Jupyter's output window is itself too narrow.
The quickest solution I ended up with is inserting this line somewhere at the top of your notebook:
from IPython.display import display, HTML
display(HTML("<style>pre { white-space: pre !important; }</style>"))
If you want to change this setting for all of your notebooks, you'll need to mess around with the custom.css config file for Jupyter as discussed here.
I wasted too much time figuring this out. Hopefully I can help some of you figure it out quicker!
- 2,502
- 1
- 16
- 16
- 2,346
- 14
- 23
Iterating on Eric's response slightly, here's a self-contained version that only creates horizontally-scrolling outputs when you want it to, rather than enabling it notebook-wide:
from IPython.display import display, HTML
from pprint import pformat
def boxprint(*args):
for arg in args:
display(HTML('<pre style="white-space: pre !important;">{}</pre>'.format(pformat(arg))))
- 1,064
- 17
- 10
On hovering right below
out[]:
in notebook you see "scroll output" . On clicking anywhere in that area you get your output scrollable both horizontally and vertically.
- 4,370
- 2
- 26
- 37
-
10Clicking on that will toggle vertical scrolling, but I don't see a way for horizontal scrolling. Are we missing something? – RightmireM Sep 18 '18 at 11:48
-
Any answers here? – k_ssup Nov 25 '19 at 22:55
-
To anyone still following this: I added an answer that might help – Eric Le Fort Nov 26 '19 at 19:52