VisMethods.contourf(*, ax=111, fig=None, crs=None, func='pcolormesh', **kwargs)[source]#

Plot Plan Position Indicator (PPI) or Range Height Indicator (RHI).

The implementation of this plot routine is in cartesian axes and does all coordinate transforms using xarray machinery. This allows zooming into the data as well as making it easier to plot additional data (like gauge locations) without having to convert them to the radar’s polar coordinate system.

Using crs='cg' the plotting is done in a curvelinear grid axes.

Additional data can be plotted in polar coordinates or cartesian coordinates depending on which axes object is used.

**kwargs may be used to try to influence the matplotlib.pyplot.pcolormesh, matplotlib.pyplot.contour, matplotlib.pyplot.contourf and wradlib.georef.polar.spherical_to_proj routines under the hood.

  • da (xarray.DataArray) – DataArray to plot

  • crs (cartopy.crs.CRS, dict or None) – cartopy CRS Coordinate Reference System describing projection If this parameter is not None, site must be set properly. Then the function will attempt to georeference the radar bins and display the PPI in the coordinate system defined by the projection string.

  • fig (matplotlib.figure.Figure) – If given, the PPI/RHI will be plotted into this figure object. Axes are created as needed. If None, a new figure object will be created or current figure will be used, depending on ax.

  • ax (matplotlib.axes.Axes or matplotlib.gridspec.SubplotSpec) – If matplotlib Axes object is given, the PPI will be plotted into this axes object. If matplotlib grid definition is given (nrows/ncols/plotnumber), axis are created in the specified place. Defaults to ‘111’, only one subplot/axis.

  • func (str) – Name of plotting function to be used under the hood. Defaults to ‘pcolormesh’. ‘contour’ and ‘contourf’ can be selected too.

Keyword Arguments:
  • cmap (str, optional) – matplotlib colormap string. Defaults to wradlib default colormap, which is either Homeyer_Rainbow if cmweather is installed or turbo.

  • zorder (int, optional) – Lower zorder values are drawn first. Defaults to 0.

  • kwargs (dict, optional) – Further kwargs, which are propagated to xarray plotting functions.


pm (matplotlib.collections.QuadMesh or matplotlib.contour.QuadContourSet) – The result of the plotting function. Necessary, if you want to add a colorbar to the plot.


If crs contains a curvelinear grid dict, the cgax - curvelinear Axes (r-theta-grid) is returned. caax - Cartesian Axes (x-y-grid) and paax - parasite axes object for plotting polar data can be derived like this:

cgax = plt.gca()
caax = cgax.parasites[0]
paax = cgax.parasites[1]

The function create_cg uses the Matplotlib AXISARTIST namespace.

Here are some limitations to normal Matplotlib Axes (see AXES_GRID1).


See Quick-view a sweep in polar or cartesian reference systems, and Plot on curvelinear grid.