我将I Python与--pylab=inline
一起使用,有时希望快速切换到交互式的、可缩放的matplotlib图形用户界面以查看绘图(在终端Python控制台中绘图时弹出的图形用户界面)。我怎么能那样做?最好不要离开或重新启动我的笔记本。
IPy笔记本中的内联绘图的问题是它们的分辨率有限,我无法放大它们以查看一些较小的部分。使用从终端开始的maptlotlib图形用户界面,我可以选择要放大的图形的一个矩形,并相应地调整轴。我试着用
from matplotlib import interactive
interactive(True)
以及
interactive(False)
但那没什么用。我在网上也找不到任何线索。
从matplotlib 1.4.0开始,现在有一个用于笔记本的交互式后端
有几个版本的IPython没有注册该别名,其缺点是:
如果这不起作用,更新你的IPython。
要玩这个,转到tmpnb.org
和粘贴
进入代码单元(或者只是修改现有的python演示笔记本)
如果您只想从内联绘图切换到交互和后退(以便可以平移/缩放),最好使用%matplotlib magic。
回到html
%pylab magic导入了许多其他东西,甚至可能导致冲突。它是“从pylab导入*”。
也可以使用新的笔记本后端(添加在matplotlib 1.4中):
如果您想在图表中有更多的交互性,可以查看mpld3和bokeh。如果您没有大量的数据点(如<;5k+),并且希望使用正常的matplotlib语法,但与%matplotlib notebook相比,它具有更多的交互性,那么mpld3是非常好的。Bokeh可以处理很多数据,但是您需要学习它的语法,因为它是一个独立的库。
也可以签出pivottablejs(pip install pivottablejs)
不管交互式数据探索有多酷,它完全会影响可再现性。它发生在我身上,所以我尝试只在很早的阶段使用它,一旦我对数据有了感觉,就切换到纯内联matplotlib/seaborn。
根据documentation,您应该能够这样来回切换:
这将弹出一个常规绘图窗口(可能需要重新启动笔记本)。
我希望这能有帮助。
相关问题 更多 >
编程相关推荐