在iPython Notebook中,是否可以禁用长输出的自动滚动?或者至少在自动滚动设置之前设置输出长度的阈值?
尝试以下命令
%%javascript
IPython.OutputArea.auto_scroll_threshold = 9999;
但是它会出错
Javascript error adding output!
SyntaxError: Unexpected identifier
See your browser Javascript console for more details.
答案 0 :(得分:38)
要禁用自动滚动,请在执行其他单元格之前在笔记本单元格中执行此javascript:
%%javascript
IPython.OutputArea.prototype._should_scroll = function(lines) {
return false;
}
还有一个ipython笔记本扩展程序disable_autoscroll,您可以使用它进行更永久的更改。请关注ipython issue #2172了解最新详情。
答案 1 :(得分:12)
答案 2 :(得分:1)
以与hack a cell to autorun类似的方式,您可以添加以下单元格:
%%javascript
require(
["notebook/js/outputarea"],
function (oa) {
oa.OutputArea.auto_scroll_threshold = -1;
console.log("Setting auto_scroll_threshold to -1");
});
将auto_scroll_threshold
设置为-1
,这意味着永远不会自动滚动。
这适用于我信任的笔记本电脑(例如jupyter trust notebook.ipynb
),不确定是否在不受信任的笔记本中执行任何单元格。
答案 3 :(得分:1)
要在run all
命令后禁用滚动到底部,请执行以下代码:
%%javascript
require("notebook/js/notebook").Notebook.prototype.scroll_to_bottom = function () {}
答案 4 :(得分:1)
要防止在单个单元格输出中滚动,请选择单元格并在命令状态下按Shift+O
。它将为该特定单元格切换输出。如果希望所有单元格显示长输出而不滚动,请转到Cell tab -> All Outputs -> Toggle Scrolling
。就是这样!
答案 5 :(得分:0)
这对我有用(没有分号)
=> #<ActiveRecord::AssociationRelation [#<ReservationOption id: 62, option_id: 110, reservation_id: 142, option_quantity: nil, created_at: "2019-10-25 12:27:45", updated_at: "2019-10-25 12:27:45">]>