matplotlib - 更改 matplotlib 图的默认背景颜色

标签 matplotlib ipython

我正在使用 ipythonmatplotlib .是否可以为 matplotlib 配置默认背景色?情节?当前(白色)颜色必须来自某个地方。是否可以将其覆盖为 #CCCCCC ?

注意:默认情况下,我不是指给定 ipython 笔记本的默认值。我的意思是我的 matplotlib 的默认值安装。

@Ffisegydd 建议的解决方案有效。但是,设置后axes.facecolor : F4EAEA ,我仍然在情节周围有白边:

enter image description here

我怎样才能摆脱这些?

更新:

现在我在我的 /etc/matplotlibrc 中有以下设置每次更改后我都重新启动了 ipython notebook;

axes.facecolor      : F4EAEA   
figure.facecolor : F4EAEA  
figure.edgecolor : F4EAEA   
savefig.facecolor : F4EAEA    
savefig.edgecolor : F4EAEA    

情节看起来与原始屏幕截图相同。即情节周围有白色条纹。

更新2:

我正在使用 ipython,并且我的 ~/.config/ipython/profile_nbserver/static/custom/custom.css 中有以下自定义 css
div.output_area {
  border-radius: 4px;
  background: #F4EAEA !important;
  border: thin solid #4a4a4a;
}

最佳答案

您需要设置坐标轴和图形背景颜色:

f = plt.figure(facecolor=".6")
ax = f.add_subplot(111, axisbg=".6")
ax.plot([0, 1, 2], [1, 0, 2])

enter image description here

交互式绘图的 facecolor 和保存的内容之间还有一个区别;你也必须通过facecolorf.savefig如果你想在结果文件上有一个统一的背景。

您可以使用 rcParams 中的以下字段更改默认值字典:
import matplotlib as mpl
mpl.rcParams["figure.facecolor"]
mpl.rcParams["axes.facecolor"]
mpl.rcParams["savefig.facecolor"]

请注意,这在具有内联后端的 IPython 笔记本中有点出乎意料,其中您在单元格下方看到的图形的“保存”版本不受 figure 控制。参数,但由 savefig参数。

关于matplotlib - 更改 matplotlib 图的默认背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25246602/

相关文章:

python - matplotlib - pandas - 子图中的 twinx 轴没有 xlabel 和 xticks

python - wxPython多线程matplotlib绘图不在主线程中

python - Matplotlib 饼图 : How to replace auto-labelled relative values by absolute values

python - 为组中的一个点格式化注释

python - cv2.imshow() 崩溃内核

python - 使用 IPython 对象?在IP数据库中

python - 根据值的范围在 matplotlib 热图中创建刻度

python - 如何矢量化使用其自身输出的滞后值的函数?

python - 使用来自 ipywidgets 的交互与数据框

python - 如何找到似乎没有在任何地方定义的 python 模块?