Это можно легко решить с помощью утилиты make_axes_locatable
. Я предоставляю минимальный пример, который показывает, как это работает и должно быть легко адаптируемым:
import matplotlib.pyplot as plt
from mpl_toolkits.axes_grid1 import make_axes_locatable
import numpy as np
m1 = np.random.rand(3, 3)
m2 = np.arange(0, 3*3, 1).reshape((3, 3))
fig = plt.figure(figsize=(16, 12))
ax1 = fig.add_subplot(121)
im1 = ax1.imshow(m1, interpolation='None')
divider = make_axes_locatable(ax1)
cax = divider.append_axes('right', size='5%', pad=0.05)
fig.colorbar(im1, cax=cax, orientation='vertical')
ax2 = fig.add_subplot(122)
im2 = ax2.imshow(m2, interpolation='None')
divider = make_axes_locatable(ax2)
cax = divider.append_axes('right', size='5%', pad=0.05)
fig.colorbar(im2, cax=cax, orientation='vertical');
Если я правильно понял ваш вопрос, вот пример данных:
CREATE TABLE IF NOT EXISTS id (`id` INT,`w1` INT,`w2` INT
);
INSERT INTO id VALUES
(1,1,5),
(2,2,4),
(3,8,3),
(4,6,2),
(5,7,1),
(6,4,9),
(7,5,7),
(8,2,6),
(9,3,8);`
CREATE TABLE IF NOT EXISTS word (
`w_id` INT,
`word` VARCHAR(5) CHARACTER SET utf8
);
INSERT INTO word VALUES
(1,'one'),
(2,'two'),
(3,'three'),
(4,'four'),
(5,'five'),
(6,'six '),
(7,'seven'),
(8,'eight'),
(9,'nine');`
select id.w1,id.w2,w1.word,w2.word from id
join word w1 on w1.w_id = id.w1
join word w2 on w2.w_id = id.w2;
7 1 seven one
6 2 six two
8 3 eight three
2 4 two four
1 5 one five
2 6 two six
5 7 five seven
3 8 three eight
4 9 four nine
и дайте мне знать, если это сработало.!