ipython笔记本--pylab内联:绘图的缩放

ipython笔记本--pylab内联:绘图的缩放,python,matplotlib,ipython,Python,Matplotlib,Ipython,如果内联激活,是否可以放大绘图?特别是对于3d绘图,旋转和缩放是一个必要的功能 目前,最接近的方法是使用figsize功能以更大的尺寸重新绘制。它需要以英寸为单位的尺寸,这在我第一次尝试使用它时就让我大吃一惊 有一些工厂的丰富的后端,将允许现场操纵情节,使用HTML5,但我认为这将是几个月前准备好 如果您在本地计算机上使用笔记本电脑,目前最简单的选择可能是不使用内联模式,因此打印会作为单独的窗口弹出。现在,由于它可以非常轻松地启用内联打印的放大功能 您只需安装mpld3(pip install

如果内联激活,是否可以放大绘图?特别是对于3d绘图,旋转和缩放是一个必要的功能

目前,最接近的方法是使用
figsize
功能以更大的尺寸重新绘制。它需要以英寸为单位的尺寸,这在我第一次尝试使用它时就让我大吃一惊

有一些工厂的丰富的后端,将允许现场操纵情节,使用HTML5,但我认为这将是几个月前准备好

如果您在本地计算机上使用笔记本电脑,目前最简单的选择可能是不使用内联模式,因此打印会作为单独的窗口弹出。

现在,由于它可以非常轻松地启用内联打印的放大功能

您只需安装mpld3(
pip install mpld3
),然后将其添加到笔记本中:

%matplotlib inline
import mpld3
mpld3.enable_notebook()

现在,绘图将在左下角显示一个工具栏菜单,您可以在其中启用鼠标缩放:)

最近出现的另一个好例子是将工作外包给plotly:

让他们为您处理渲染、平移和缩放

mpld3减慢了我笔记本的执行速度。我发现最好使用后端,它提供相同的交互工具,但也允许通过右键单击菜单保存图形:

import matplotlib
matplotlib.use('nbagg')
import matplotlib.pyplot as plt

您现在可以使用
%matplotlib笔记本
而不是
%matplotlib inline
,这样您就可以与绘图交互了。

matplotlib.use('nbagg')
对我也不起作用。我确实发现
mdplt3
相当慢。我没有缩放,而是用这篇帖子调整了我的图形大小(使其变大):

似乎3D绘图还不受支持:这很好,但应该补充一点,对于一些较重的绘图(例如,包含数百万个点的绘图),它非常慢。我在我的Jupyter笔记本4.2.2中实现了这一点,放大会导致图形变为空白。将origin='lower'作为参数添加到imshow()调用中修复了它。(例如,imshow(res,origin='lower',cmap=cm.gray))不适合我。我得到了
Json序列化错误
是的-使用最新版本的matplotlib,您现在可以选择nbagg后端。这是一个很好的解决方案。如果您尝试了,但不起作用,请检查matplotlib的版本。我认为这是在1.5版中引入的,但它并没有像我希望的那样在子地块中工作;可以缩放和平移单个子绘图,但不能增大/减小整个绘图图像的大小。平心而论,这不是上面提到的原始问题。@ijoseph您还可以增加整个图像的大小。只需拖动绘图的右下角..如果您已经调用%matplotlib inlineI,则可能需要重新启动笔记本。我收到错误“Javascript错误:IPython未定义”。老实说,我认为这是最好的答案,看起来比mpld3和更多功能要好得多。