# Make an EllipseCollection. ellipses = EllipseCollection(widths, heights, rotations, offsets=xy, units='xy', transOffset=ax.transData) ellipses.set_array(np.asarray(sema)) # Add coastlines m.drawmapboundary(zorder=0) m.drawcoastlines(zorder=1) m.fillcontinents(zorder=0, color='0.6') m.drawparallels(parallels, labels=[1, 0, 0, 0], linewidth=0) m.drawmeridians(meridians, labels=[0, 0, 0, 1], linewidth=0) # Add ellipses coloured by the semi-major axis magnitude. ax.add_collection(ellipses) ellipses.set_linewidth(0) ellipses.set_cmap(cm.viridis) ellipses.set_zorder=200 # Add a nice colour bar. div = make_axes_locatable(ax) cax = div.append_axes("right", size="5%", pad=0.2) cb = fig.colorbar(ellipses, cax=cax) cb.set_label("Semi-major axis ($ms^{-1}$)") ax.set_title('$M_2$ tidal ellipses')