I would like to show the index of a matrix on a matplotlib figure.
Let say that our matrix is square with index ['A','B','C']. I would like to see something like:
| A | B | C | |
|---|---|---|---|
| A | fig1 | fig2 | fig3 | 
| B | fig4 | fig5 | fig6 | 
| C | fig7 | fig8 | fig9 | 
My code is the following:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import itertools
string = 'ABC'
combinations = itertools.combinations(string, 2)
data = dict()
for combination in combinations:
    begin = np.random.random()
    data[combination] = np.linspace(begin, begin+1,20).reshape(10,2)
fig = plt.figure(figsize = (15,15))
all_plot_positions = range(1, len(string) * len(string)+1)
plot_positions_used = []
for key in data:
    X, Y = np.meshgrid(data[key][:,0], data[key][:,1])
    Z = 2*X + Y**2
    i, j = string.index(key[0]), string.index(key[1])
    ax = plt.subplot2grid((len(string), len(string)), (i, j))
    CS = ax.contourf(X, Y, Z)      
    cbar = plt.colorbar(CS)
    
    ax = plt.subplot2grid((len(string), len(string)), (j, i))
    CS = ax.contourf(X, Y, Z)
    cbar = plt.colorbar(CS)
for i in range(len(string)):
    ax = plt.subplot2grid((len(string), len(string)),( i,i))
    ax.set_xticks([])
    ax.set_yticks([])
fig.subplots_adjust(hspace = 0.5, wspace = 0.5)
fig.savefig('fig.pdf')
And my output:

As you see, There is not index.
In addition (but this could be a second question), I also would like to show only one colorbar that represent all the graphs.