Код: Выделить всё
import matplotlib.pyplot as plt
def set_legend(ax, item_count, title=None):
legend = ax.legend(
title=title,
loc='upper center',
bbox_to_anchor=(0.5, -0.1),
ncol=item_count,
frameon=False,
prop={'size': 6}
)
legend.get_title().set_fontsize('8')
return ax
def generate_plot_base():
fig, ax = plt.subplots(1, 1, figsize=(6, 2.71), tight_layout = {'pad': 0})
return ax
ax = generate_plot_base()
ax = set_legend(ax, 3)
но, когда я добавляю легенду без заголовка, нижняя часть часть сюжета тратится на то, чтобы воплотить легенду. если я добавляю заголовок легенды, это требует больше затрат.
вместо этого я хочу добавить дополнительное пространство между нижней частью и осью X, чтобы, если я добавлю легенду (с или без заголовок легенды), и площадь графика, и расположение оси останутся прежними, поскольку свободной площади уже достаточно.
Я пробовал экспериментировать с Tight_layout и subplot_adjust, но Я не могу получить поведение, которое описываю здесь.
Подробнее здесь: https://stackoverflow.com/questions/792 ... s-position