簡體   English   中英

如何阻止散景在 Jupyter Notebook 中打開新標簽頁?

[英]How to stop bokeh from opening a new tab in Jupyter Notebook?

首先,在將其標記為重復之前,我已經閱讀了其他解決方案,但不幸的是,它們都不適用於我。

我的問題是我想在 Juypter Notebook 中顯示散景圖(並且僅在 Jupyter Notebook 中),而不是在新選項卡/窗口中。

這里的官方文檔中我被告知我只需要更改

output_file

output_notebook

盡管如果我這樣做,該地塊現在顯示在線,背景虛化不會停止也打開一個新標簽,並顯示不必要的情節出現。

因為我要在我的項目中創建很多圖,所以不必總是關閉這個新選項卡並返回到筆記本,而是讓它停止創建新選項卡,就像它與 matplotlib 一起工作一樣,這很好.

讓我困惑的是,如果我加載官方教程並在那里輸入代碼,例如

import numpy as np

x = np.linspace(0, 10, 100)
y = np.exp(x)

p = figure()
p.line(x, y)

show(p)

沒有打開新標簽。 如果我現在在我機器的 Juypter Notebook 本地運行相同的代碼,它打開一個新選項卡。

我已經嘗試了一段時間來解決這個問題,任何幫助將不勝感激。

提前致謝,文森特

你需要調用output_notebook在你的筆記本電腦的頂部,但只有調用output_notebook 如果您完全調用output_file ,則會激活將輸出保存到文件的持久模式,並導致show打開包含這些文件的新選項卡。 您需要調用reset_output來清除該持久模式。

為方便起見,由於多個用戶要求它,如果沒有提供輸出模式, show行為就像output_file被調用為默認值一樣。 沒有從 Binder 教程中打開選項卡的原因是,在 Binder 服務器上遠程運行的代碼在技術上不可能在本地瀏覽器上打開選項卡(這是一件非常好的事情)。

在@bigreddot 的回答中添加一個明確的例子:

您可能已經在筆記本中的某處運行了bokeh.io.output_file()以保存值得注意的圖形。 但是,現在您只想快速試驗一些繪圖以檢查數據。

只需重置您的設置即可停止保存到筆記本中任何單元格中的文件,如下所示:

import bokeh.io
# this is here only for completeness to clarify where
# the methods are nested (you probably already imported this earlier)


bokeh.io.reset_output()
bokeh.io.output_notebook()

您可以稍后再次激活保存到文件以保留有趣的圖形。

您可以導入:

from bokeh.plotting import output_notebook

並在figure聲明之前調用output_notebook ,然后您只需使用show顯示圖形。 請參閱文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM