IPython中的透明内联matplotlibs

IPython中的透明内联matplotlibs,matplotlib,ipython,ipython-notebook,Matplotlib,Ipython,Ipython Notebook,我希望matplotlib绘图的背景在IPython笔记本中是透明的。这听起来可能很傻,因为笔记本本身默认为白色背景,但: 1) 我使用日光浴背景和 2) 更重要的是,当我通过nbconvert将笔记本直接嵌入我的博客时,我希望它们是透明的 使用类似于savefig('file',transparent=True)的东西很容易,但我不是保存图形,而是在线显示它们(通过使用IPython笔记本调用IPython--matplotlib inline) 我一直在使用IPython笔记本配置文件,尤其

我希望matplotlib绘图的背景在IPython笔记本中是透明的。这听起来可能很傻,因为笔记本本身默认为白色背景,但:

1) 我使用日光浴背景和

2) 更重要的是,当我通过
nbconvert
将笔记本直接嵌入我的博客时,我希望它们是透明的

使用类似于
savefig('file',transparent=True)
的东西很容易,但我不是保存图形,而是在线显示它们(通过使用
IPython笔记本调用IPython--matplotlib inline

我一直在使用IPython笔记本配置文件,尤其是
c.InlineBackend.rc
。例如,我升级到matplotlib的开发版本,以访问其新的
savefig.transparent
rcParam,并尝试使用
c.InlineBackend.rc={savefig.transparent':True}配置它
,但正如预期的那样,它只影响使用
savefig
保存的绘图


请注意,我使用的是最新的IPython 2.0版本。这一定是可能的,对吗?如果您能提供任何信息,我们将不胜感激。

内联绘图是html对象(
),类
ui可调整大小。
。因此,您可以通过自定义笔记本电脑的CSS来更改其默认行为:

  • 找到笔记本电脑的设置:在终端中,键入

    ipython locate
    
  • 在指定的目录中,转到subdir
    profile\u default\static\custom
    (或您要使用的任何配置文件)

  • 编辑或创建名为
    custom.CSS的CSS文件

  • 把这个放进去:

    img.ui-resizable
    {
    opacity:0.4;
    }
    
  • 关闭笔记本电脑,杀死IPython并重新启动它(以便它重新创建提供的文件)

    它应该适用于导出的笔记本,只要您将它们导出为html,并在那里更改css


    这并不完全是您想要的,但它确实起到了作用。

    内联绘图是html对象(
    ),类
    ui可调整大小。
    。因此,您可以通过自定义笔记本电脑的CSS来更改其默认行为:

  • 找到笔记本电脑的设置:在终端中,键入

    ipython locate
    
  • 在指定的目录中,转到subdir
    profile\u default\static\custom
    (或您要使用的任何配置文件)

  • 编辑或创建名为
    custom.CSS的CSS文件

  • 把这个放进去:

    img.ui-resizable
    {
    opacity:0.4;
    }
    
  • 关闭笔记本电脑,杀死IPython并重新启动它(以便它重新创建提供的文件)

    它应该适用于导出的笔记本,只要您将它们导出为html,并在那里更改css


    这并不完全是您想要的,但它确实起到了作用。

    内联绘图是html对象(
    ),类
    ui可调整大小。
    。因此,您可以通过自定义笔记本电脑的CSS来更改其默认行为:

  • 找到笔记本电脑的设置:在终端中,键入

    ipython locate
    
  • 在指定的目录中,转到subdir
    profile\u default\static\custom
    (或您要使用的任何配置文件)

  • 编辑或创建名为
    custom.CSS的CSS文件

  • 把这个放进去:

    img.ui-resizable
    {
    opacity:0.4;
    }
    
  • 关闭笔记本电脑,杀死IPython并重新启动它(以便它重新创建提供的文件)

    它应该适用于导出的笔记本,只要您将它们导出为html,并在那里更改css


    这并不完全是您想要的,但它确实起到了作用。

    内联绘图是html对象(
    ),类
    ui可调整大小。
    。因此,您可以通过自定义笔记本电脑的CSS来更改其默认行为:

  • 找到笔记本电脑的设置:在终端中,键入

    ipython locate
    
  • 在指定的目录中,转到subdir
    profile\u default\static\custom
    (或您要使用的任何配置文件)

  • 编辑或创建名为
    custom.CSS的CSS文件

  • 把这个放进去:

    img.ui-resizable
    {
    opacity:0.4;
    }
    
  • 关闭笔记本电脑,杀死IPython并重新启动它(以便它重新创建提供的文件)

    它应该适用于导出的笔记本,只要您将它们导出为html,并在那里更改css


    这并不完全是你想要的,但它起到了作用。

    接下来,tillsten在Github上发布的问题已经得到了修补,如下所示:

    rcParams['figure.facecolor'] = (0,0,0,0)
    

    更新IPython后,现在应该可以工作了。为开源干杯。

    接下来,tillsten在Github上发布的问题已经修补,如下所示:

    rcParams['figure.facecolor'] = (0,0,0,0)
    

    更新IPython后,现在应该可以工作了。为开源干杯。

    接下来,tillsten在Github上发布的问题已经修补,如下所示:

    rcParams['figure.facecolor'] = (0,0,0,0)
    

    更新IPython后,现在应该可以工作了。为开源干杯。

    接下来,tillsten在Github上发布的问题已经修补,如下所示:

    rcParams['figure.facecolor'] = (0,0,0,0)
    

    更新IPython后,现在应该可以工作了。为开源干杯。

    图形通过直接嵌入html中的PNG显示。您正在保存图形,IPython只是对您隐藏。您可能需要深入研究IPython代码,以找到保存的位置,并添加通过参数传递的功能。我觉得第二种方法应该有效(设置ipython rc参数)@tillsten,我怀疑这意味着IPython在使用matplotlib内联时没有直接调用
    savefig
    。也许它使用的是一些较低级别的函数?我会四处看看,试图找出答案,但希望对这些事情更了解的人能够毫不知情。我在IPython github页面上发布了一个问题,也许他们知道的更多。我尝试了我能想到的所有方法(figure constructor、rcparmas、ipython config),但无法设置为figure facecolor。这些图形通过直接嵌入html的PNG显示。您正在保存这些图形,ipython只是将其隐藏在