Размещение цветовой панели для сюжетов - PullRequest
0 голосов
/ 24 мая 2019

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

Я хотел бы добавить цветную полосу к фигуре, которая выглядит следующим образом figure with tight layout

Создано с помощью этого кода:

fig, axes = plt.subplots(nrows = 3, ncols = 2, tight_layout=True)
i = 1

for cut in cuts:
    for time in times:
        #some code that will get an array for a given cut and time

        if cut == 'x':
            plt.subplot(3,2,i)

            plt.imshow(arr, cmap='gist_heat', aspect='equal', vmin = minimum, vmax = maximum, extent=[np.min(y), np.max(y), np.min(z), np.max(z)], interpolation='spline16', norm=colors.PowerNorm(gamma=1./3.))
            plt.title( '..')
            plt.xticks(y_ticks)
            plt.yticks(z_ticks)
            plt.xlabel('${y}$')
            plt.ylabel('${z}$')
            #plt.colorbar
            i += 1

        elif cut == 'y':

            plt.subplot(3,2,i)

            plt.imshow(arr, cmap='gist_heat', aspect='equal', vmin = minimum, vmax = maximum, extent=[np.min(x), np.max(x), np.min(z), np.max(z)], interpolation='spline16', norm=colors.PowerNorm(gamma=1./3.))
            plt.title('..')
            plt.xticks(x_ticks)
            plt.yticks(z_ticks)
            plt.xlabel('${x}$')
            plt.ylabel('${z}$')
            #plt.colorbar
            i += 1

        elif cut == 'z':

            plt.subplot(3,2,i)

            I = plt.imshow(arr, cmap='gist_heat', aspect='equal', vmin = minimum, vmax = maximum, extent=[np.min(x), np.max(x), np.min(y), np.max(y)], interpolation='spline16', norm=colors.PowerNorm(gamma=1./3.))
            plt.title('..')
            plt.xticks(x_ticks)
            plt.yticks(y_ticks)
            plt.xlabel('${x}$')
            plt.ylabel('${y}$')
            #plt.colorbar

            i += 1

plt.colorbar(I, orientation = 'horizontal').set_label('.')
plt.show()

(Правка :) Я попытался ответить на некоторые из ответов на этот вопрос , но у меня возникла проблема.

Итак, я забрал тугое_столье и добавил это к коду:

fig.subplots_adjust(bottom = 0.8)
cbar_ax = fig.add_axes([0.35, 0.05, 0.3, 0.03])
fig.colorbar(I, cax=cbar_ax, orientation = 'horizontal').set_label('blabla')
plt.tight_layout()

, что дало мне почти то, что я хочу - рисунок: figure with colorbar За исключением того, что он оттолкнул эти две колонки графиков отдруг с другом.Как я могу предотвратить это?

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