First of all, if you have two different parameters that you want to visualize at the same time, you can do this by assigning them two different channels (for example, red and green). This can be done by normalizing two two-disk arrays and bringing them to imshow in the same way as this answer .
If you are happy with the square 2-digit color palette, you can get this color meshgrid in the same way by creating a meshgrid , which then folds back and feeds to imshow :
from matplotlib import pyplot as plt import numpy as np
The result is as follows:

In principle, the same should be done with polar Axes , but according to the comment on this github ticket , imshow does not support polar axes, and I could not make imshow fill the entire disk.
EDIT
Thanks to ImportanceOfBeingErnest and his answer to another question (the color keyword did this), now there is a 2-digit color sign on the polar axis using pcolormesh . There were a few warnings, the most noteworthy, the colors dimension should be less than the meshgrid direction in theta , otherwise the color palette has a spiral shape:
fig= plt.figure(figsize=(8,4)) plot_ax = fig.add_subplot(121) bar_ax = fig.add_subplot(122, projection = 'polar') plot_ax.imshow( np.dstack((d_norm,m_norm, np.zeros_like(directions))), aspect = 'auto', extent = (0,100,0,100), ) theta, R = np.meshgrid( np.linspace(0,2*np.pi,100), np.linspace(0,1,100), ) t,r = np.meshgrid( np.linspace(0,1,99), np.linspace(0,1,100), ) image = np.dstack((t, r, np.zeros_like(r))) color = image.reshape((image.shape[0]*image.shape[1],image.shape[2])) bar_ax.pcolormesh( theta,R, np.zeros_like(R), color = color, ) bar_ax.set_xticks(np.linspace(0,2*np.pi,5)[:-1]) bar_ax.set_xticklabels( ['{:.2}'.format(i) for i in np.linspace(np.min(directions),np.max(directions),5)[:-1]] ) bar_ax.set_yticks(np.linspace(0,1,5)) bar_ax.set_yticklabels( ['{:.2}'.format(i) for i in np.linspace(np.min(magnitude),np.max(magnitude),5)] ) bar_ax.grid('off') plt.show()
This gives the following figure:
