Может ли один файл стиля matplotlib наследовать значения от другого?

#python #matplotlib

#python #matplotlib

Вопрос:

Предположим, у меня есть файл стиля matplotlib base.mplstyle с несколькими спецификациями

 legend.fancybox: True
legend.numpoints: 1
legend.frameon: True
legend.framealpha: 0.8
legend.shadow: True
text.color: white
text.usetex: True
figure.figsize : 9, 9
  

Предположим, я хочу создать другой файл стиля small_figure.mplstyle , в котором все одинаковые настройки сохраняются только для одного:

 legend.fancybox: True
legend.numpoints: 1
legend.frameon: True
legend.framealpha: 0.8
legend.shadow: True
text.color: white
text.usetex: True
figure.figsize : 2, 2 # <--- the only difference
  

Есть ли какой-нибудь простой способ указать, от чего наследовать значения по умолчанию, вместо того, чтобы копировать-вставлять кучу значений параметров small_figure.mplstyle base.mplstyle ? Я думаю о чем-то кратком, например

 # This is not a valid .mplstyle file    
plt.style.use("base")
figure.figsize : 2, 2
  

Ответ №1:

Таблицы стилей предназначены для комбинирования, поэтому вы можете настроить стили, которые хотите объединить, в форме списка. Обратите внимание, однако, что они будут переопределены значениями более правосторонних стилей.

 import matplotlib.pyplot as plt

plt.style.use(['base', 'small_figure'])
  

Комментарии:

1. Спасибо! Я понятия не имел. Также интересно знать, что порядок списка имеет значение, это имеет смысл, но это тонко