代码之家  ›  专栏  ›  技术社区  ›  Rocky Li

在matplotlib figure上启用白框/禁用透明框

  •  1
  • Rocky Li  · 技术社区  · 7 年前

    我在用一个黑暗的主题运行ipython笔记本。当我在此基础上构建图表时,图表是白色的,但是框架是透明的(因此是深色的),隐藏了同样是深色的记号。有没有办法使镜框不透明/不白?

    The ticks are barely visible due to the black background.

    编辑:这不是关于改变坐标轴、记号/标签的颜色,我在考虑添加一个白色背景框,而不是改变记号的颜色-如果我只是改变记号的颜色,因为图形是白色的,那会很难看

    1 回复  |  直到 7 年前
        1
  •  7
  •   ImportanceOfBeingErnest    7 年前

    %matplotlib inline 后端(通常是默认的)是通过保存来创建的 savefig 然后显示的png。 有争论 facecolor fig.savefig("name.png", facecolor="w") .

    保存选项可以在jupyter配置中进行调整。要获得白色背景,可以设置

    %config InlineBackend.print_figure_kwargs={'facecolor' : "w"}
    

    如果要在每个笔记本上使用,也可以将其添加到 ipython configuration file

    c = get_config()
    c.InlineBackend.print_figure_kwargs={'facecolor' : "w"}
    
        2
  •  0
  •   Douasb'    4 年前

    要获得透明框架,只需在加载matplotlib后添加以下行:

    import matplotlib.pyplot as plt
    plt.rcParams['axes.facecolor'] = 'none'
    

    这对我起了作用!