Увеличение расстояния между сюжетом и заголовком с помощью matplotlib - PullRequest
0 голосов
/ 27 марта 2019

Я использую следующий скрипт для генерации некоторых графиков. Иногда проблема заключается в том, что научное обозначение частично совпадает с названием.

Есть ли способ исправить это, например, немного сдвинув сюжет вниз?

    # init
    u = {}
    o = {}

    # create figure
    fig = plt.figure()

    # x-Axis (timesteps)
    i = np.array(i)

    for key in urbs_values.keys():
        # y-Axis (values)
        u[key] = np.array(urbs_values[key])
        o[key] = np.array(oemof_values[key])

        # draw plots
        plt.plot(i, u[key], label='urbs_'+str(key), linestyle='None', marker='x')
        plt.ticklabel_format(axis='y', style='sci', scilimits=(0, 0))
        plt.plot(i, o[key], label='oemof_'+str(key), linestyle='None', marker='.')
        plt.ticklabel_format(axis='y', style='sci', scilimits=(0, 0))

    # plot specs
    plt.xlabel('Timesteps [h]')
    plt.ylabel('Flow [MWh]')
    plt.title(site+' '+name)
    plt.grid(True)
    plt.tight_layout(rect=[0,0,0.7,1])
    plt.legend(bbox_to_anchor=(1.025, 1), loc=2, borderaxespad=0)
    # plt.show()

Пример: enter image description here

Ответы [ 2 ]

1 голос
/ 27 марта 2019

Вы можете изменить положение заголовка, указав значение параметра y в plt.title(...), например, plt.title(site+' '+name, y=1.1).

0 голосов
/ 27 марта 2019

Вы можете отредактировать позицию нарезки следующим образом:

# plot specs
plt.xlabel('Timesteps [h]')
plt.ylabel('Flow [MWh]')
plt.title(site+' '+name)
ttl = plt.title
ttl.set_position([.5, 1.02])
plt.grid(True)
plt.tight_layout(rect=[0,0,0.7,1])
plt.legend(bbox_to_anchor=(1.025, 1), loc=2, borderaxespad=0)
# plt.show()

настройка '1.02' должна помочь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...